C言語なら俺に聞け 142 [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん 転載ダメ©2ch.net (ワッチョイ 8a6f-bDrV)
垢版 |
2017/08/10(木) 20:21:23.44ID:hEocmkh50
C言語の話題のみ取り扱います C++の話題はC++スレへ
質問には最低限の情報(ソース/コンパイラ/OS)を付ける
数行で収まらないソースは以下を適当に使ってURLを晒す
https://paiza.io/
https://ideone.com/
http://codepad.org/

C11
http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1570.pdf

C99
http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1256.pdf
http://kikakurui.com/x3/X3010-2003-01.html

C FAQ 日本語訳
http://www.kouno.jp/home/c_faq/

JPCERT C コーディングスタンダード
https://www.jpcert.or.jp/sc-rules/


http://mevius.2ch.net/test/read.cgi/tech/1500293207/
http://www.geocities.jp/c_cpp_cs/about_c/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
2017/10/13(金) 22:28:05.05ID:KnON5zi30
>>712
そのフィールド幅の設定にマクロを使って指定できない,ハードコーディングの形になってしまう
これでは確保側との連携が取れない
716デフォルトの名無しさん (ワッチョイ 1387-NqOW)
垢版 |
2017/10/13(金) 22:31:22.01ID:KDt3KwS+0
C言語はアセンブラのラッパー言語だから、そう言うもんは各自が気を付ければいいのであって、へんな関数量産すんな。
717デフォルトの名無しさん (ワッチョイ 799f-BSx0)
垢版 |
2017/10/14(土) 04:50:34.97ID:rkGKts9o0
scanf() は POSIX.1-2008 で m という修飾子が規定されてだな・・・
https://paiza.io/projects/que1l9qus5fMStBgkGgF9w
2017/10/14(土) 05:25:15.07ID:G4fIdpwa0
m修飾子はscanf()の中でバッファの確保とポインタ代入をしてくれる、か。
使用者側がバッファを用意して容量はこれだけ、と言明するのとはちと違うね。

実用だと書式文字列をsnprintf()か何かで生成する手かなぁ。
2017/10/14(土) 06:38:32.00ID:qjmLCkqj0
実用なら動的確保で問題ねーだろ
720デフォルトの名無しさん (ワッチョイ 799f-vMUl)
垢版 |
2017/10/14(土) 06:44:41.93ID:YpZiBRe40
>>718
文字数制限したい場合は %3mc のように c を使うとできる。メモリ確保は相変わらず scanf() 側でやるので後で free() が必要であることには変わりがないが。
https://linuxjm.osdn.jp/html/LDP_man-pages/man3/scanf.3.html
721デフォルトの名無しさん (ワッチョイ 0bf0-MWTH)
垢版 |
2017/10/14(土) 07:16:53.80ID:F19RwFTi0
>>711
くだらんなあ
%sのためにわざわざscanfなんぞ使う珍獣の話しかできんのかおまえは
2017/10/14(土) 09:37:54.97ID:wj7CJkun0
>>721
この話の発端のとあるC教育サイト
https://9cguide.appspot.com/14-03.html
では
scanf("%s");
を使っちまっている
珍獣というほどのものではないのでは?
禁じ手をやってしまう scanf() は悪
2017/10/14(土) 12:38:59.99ID:wj7CJkun0
>>720
所有権をうんぬんするようなところ、たとえば malloc() したところで free() する、という教義のもとでは使うのに抵抗があるかもしれない、
win32api などはそんなかんじ
2017/10/14(土) 12:40:09.00ID:kY4tNrcHd
>>723
教義という表現に込められたいやらしさ
2017/10/14(土) 12:41:35.66ID:qjmLCkqj0
>>723
windowsならscanf_s使え、posixならm修飾使えで解決ってことだな
726デフォルトの名無しさん (ワッチョイ 799f-vMUl)
垢版 |
2017/10/14(土) 13:41:17.27ID:YpZiBRe40
windowsの方でもscanf()のmあるのでは?
2017/10/14(土) 14:15:25.78ID:qjmLCkqj0
なんでposix拡張があると思うの?
2017/10/14(土) 14:56:12.00ID:VRAn8B+V0
配列って[]だったら自力でEOS入れなきゃいけないけど[]の中に数字入れると自動で入るの?
2017/10/14(土) 15:53:03.38ID:wj7CJkun0
>>728
逆だ
数字いれると自分で \0 を入れないといけない
数字がない場合は、\0 を自力で書かなくとも良い
2017/10/14(土) 15:58:39.20ID:pEkiZp92a
[迷信] scanf ではバッファオーバーランを防げない
http://www.kijineko.co.jp/tech/superstitions/buffer-overrun-of-scanf.html
[迷信] scanf でキーボードから入力
http://www.kijineko.co.jp/tech/superstitions/input-from-keyboard-by-scanf.html
731デフォルトの名無しさん (ワッチョイ 69d2-89ZN)
垢版 |
2017/10/14(土) 15:59:02.19ID:bKRFV+pB0
はい ちょっとお邪魔しますよ
ISR() signal() の違いについて
どちらを使うべきなのか うんちくきぼんぬですよ
732デフォルトの名無しさん (ワッチョイ 69d2-89ZN)
垢版 |
2017/10/14(土) 16:17:48.14ID:bKRFV+pB0
↑割り込みハンドラで使う関数についての質問です
733デフォルトの名無しさん (ワッチョイ 1387-NqOW)
垢版 |
2017/10/14(土) 16:24:17.93ID:J5VLsuMb0
組み込み系だとmallocなんか初期化関数ん中でしか使わない。
2017/10/14(土) 16:32:11.89ID:qjmLCkqj0
>>731
AVR libc独自か、規格で定められているかの違い
環境が限定されるならISRで良い
735デフォルトの名無しさん (ワッチョイ 69d2-89ZN)
垢版 |
2017/10/14(土) 16:42:09.10ID:bKRFV+pB0
なるほど! ありがとうございました
2017/10/14(土) 16:57:24.91ID:/3exgnU7M
>>731
環境わからんけどavrならISR()推奨
http://avrwiki.osdn.jp/cgi-bin/wiki.cgi?page=%B3%E4%A4%EA%B9%FE%A4%DF
737デフォルトの名無しさん (ワッチョイ 69d2-89ZN)
垢版 |
2017/10/14(土) 17:13:04.55ID:bKRFV+pB0
割り込みにまさかの独自ライブラリがあるとは思わなかった
>>736の参照先見ると色々なアトリビュートが設定できるようになっとるわw
その内容をみると自前で割り込み関係のレジスタ叩けば実現可能な機能ばかり
##pop/push/reti自動付加禁止だけはsignal()では実現不能?
signalでよさそうな気が。。。
2017/10/14(土) 17:25:11.34ID:qjmLCkqj0
ANSI Cのsignalじゃなくて、AVR拡張のSIGNALのこと言ってたの?
なら、manualでSIGNALじゃなくてISR使えってなってるよ
違いも、属性指定できるかどうかだけ

http://www.nongnu.org/avr-libc/user-manual/group__avr__interrupts.html#ga67cd0dea412157775c2f2a3ffe9fb8ff
739デフォルトの名無しさん (ワッチョイ 0bf0-MWTH)
垢版 |
2017/10/14(土) 19:42:35.98ID:F19RwFTi0
>>722
他には?
珍獣でないと主張するにはnが小さすぎるぜ
その小さすぎるnでどうたら言っちゃうおまえ
自らへの死刑宣告を読み上げている自覚はあるのか?
740デフォルトの名無しさん (ワッチョイ 79b3-dPak)
垢版 |
2017/10/14(土) 19:59:48.25ID:4XKuJznc0
クッサ
2017/10/15(日) 02:10:37.75ID:12RNBD+40
>>739
https://qiita.com/Tsutajiro/items/a5620b17ac530cc96e87
https://ja.wikipedia.org/wiki/Scanf
http://www9.plala.or.jp/sgwr-t/c/sec05.html
http://rainbow.pc.uec.ac.jp/edu/program/b1/Ex2-1b.htm
https://stackoverflow.com/questions/2155518/what-is-scanfs-and-scanfd-format-identifiers

「scanf("%s"」とグルるだけで、バッファオーバーランの危険がある注記のない上記記事が山のようにでてくる。
おすきなだけどうぞ、このように説明の手間を省きおざなりに scanf("%s") としてその場をとりつくろい、
読んだ人間は経験が少ないため、これでもいいのか、と勘違いしてしまう例は多々ある

scanf() は悪
やるんなら、fgets() してから sscanf() だの atoi() だの strtol() だので処理するのが定石
742デフォルトの名無しさん (ワッチョイ 799f-vMUl)
垢版 |
2017/10/15(日) 04:40:36.84ID:aLoOQk2A0
>>727
てか、C言語のライブラリの問題なのであるともないとも言えるよな。
POSIX準拠でないCコンパイラでも同じ動きをするライブラリをリンク時または実行時にリンクするならそう動くわけだし。
WindowsでもGCCでコンパイルするならそうなるわけだし。Cygwinの中ならなおのことそうだ。
743デフォルトの名無しさん (ワッチョイ 799f-BSx0)
垢版 |
2017/10/15(日) 05:29:35.87ID:ZgJv24or0
そう言えば fgets() も1行の長さが指定した長さ以上になった場合に入力に残るよな。
で、だいたいは妙に長いバッファ用意して誤魔化す(またはそういう仕様にするw)わけだが、
そういうのが通用しない場合はそれを上回る入力をされた時にエラーにするかまたは入力に
残った不要な文字列を捨てる処理はあった方が良い。そうでないなら GCC の getline() を
使うかまたは自作するかだ。
2017/10/15(日) 06:22:39.79ID:12RNBD+40
>>743
昔宿題スレで作ったけれども忘れてしまった,まあ誰しも一回はつくるものじゃないかな
2017/10/15(日) 07:05:24.20ID:KCBqed/H0
>>743
> そう言えば fgets() も1行の長さが指定した長さ以上になった場合に入力に残るよな。
当たり前だろ
より長い入力が想定されるなら普通に改行がでてくるまで続けて読めばいいだけだし
妙に長いバッファとかアホすぎる w
746名無し@キムチ (ワッチョイ 09b3-Qarq)
垢版 |
2017/10/15(日) 08:51:39.88ID:kjrLb6gv0
フィギュアスケートアニメーション作成ソフト「振付王」公開!!

ダウンロード↓
http://www.vector.co.jp/soft/winnt/game/se516681.html
デモ動画↓
http://youtu.be/j8KjRXr7zGs
747デフォルトの名無しさん (ワッチョイ 0102-MWTH)
垢版 |
2017/10/15(日) 09:47:59.48ID:J//jr+AC0
はははは、やっとn=6か
で、%sさえ使わなきゃscanfは安全なのか?
748デフォルトの名無しさん (ワッチョイ 0102-MWTH)
垢版 |
2017/10/15(日) 09:48:32.63ID:J//jr+AC0
>>741
>>747
2017/10/15(日) 10:01:56.35ID:12RNBD+40
>>747
>はははは、やっとn=6か
いくらでも増やせますが

>で、%sさえ使わなきゃscanfは安全なのか?
fgets() 推しの俺にきかれても,そんなことはわからない‥(困惑)
2017/10/15(日) 10:17:19.28ID:2VM8B8DT0
%sの危険性を長々と説明しているwikipediaを挙げてるんだからギャグのつもりだろ
stackoverflowも%sではなく%*sだし、scanf使ったことないのかな?
751デフォルトの名無しさん (ワッチョイ d1c7-MWTH)
垢版 |
2017/10/15(日) 13:38:38.59ID:R4tP3Q0h0
>>749
わからないだと?
おまえシッタカこいてただけか

まあそうだろうな、%s以外に言及できないようだから
2017/10/15(日) 14:19:43.64ID:12RNBD+40
>>751
fgets()でとりあえず読み込むのは有力な方針だからね、まあsscanf() を後段で使うことはあるね
scanf() のチマチマした書式は必要時に追いかければいい、今調べる必要はないと思うね

>シッタカ
大局観といってほしいね
753デフォルトの名無しさん (ワッチョイ 794b-dPak)
垢版 |
2017/10/15(日) 17:10:16.88ID:/ln1Xcyy0
scanf vs fgets
もう終わり?
754デフォルトの名無しさん (ワッチョイ e9c6-BSx0)
垢版 |
2017/10/15(日) 17:14:39.09ID:Yk/ODCzd0
くだらん戦いだ
2017/10/15(日) 17:27:36.97ID:12RNBD+40
あおりネタがなくてごめん…
756デフォルトの名無しさん (ワッチョイ d108-MWTH)
垢版 |
2017/10/15(日) 19:51:17.65ID:DZC0OlhV0
>>753
終わりつーか始まってない
そもそもscanfを把握してない御仁とでは話にならなくて
2017/10/15(日) 20:51:34.80ID:12RNBD+40
scanf() の詳細仕様を把握しないと判断できない、というのはどうかな?
scanf() が初期のころから建て増し建て増しでどんどん増えていったあの方向性は、正しくない複雑化のしかただと思うよ
scanf() を書く側にたってみると、おぞましい
758デフォルトの名無しさん (ワッチョイ e9c6-BSx0)
垢版 |
2017/10/15(日) 21:09:03.11ID:Yk/ODCzd0
scanf()
scanf()
scanf()
scanf()
scanf()
759デフォルトの名無しさん (ワッチョイ 530f-GDEj)
垢版 |
2017/10/15(日) 21:13:13.74ID:Y+x8OcED0
超ド級初心者なんだけどおすすめの開発環境とかある?
2017/10/15(日) 21:14:17.56ID:3VVV/TO4d
>>759
Visual Studio 2017。デバッグが簡単で分かりやすい。
761デフォルトの名無しさん (ワッチョイ 530f-GDEj)
垢版 |
2017/10/15(日) 21:17:59.72ID:Y+x8OcED0
vs2017コンパイルの仕方がわからなかった(´・ω:;.:...
2017/10/15(日) 21:20:39.95ID:3VVV/TO4d
>>761
プロジェクトにソースファイルを追加して、デバッグメニューからビルドを選ぶだけだぜ。
763デフォルトの名無しさん (ワッチョイ 530f-GDEj)
垢版 |
2017/10/15(日) 21:22:30.69ID:Y+x8OcED0
ビルド押したんだけど反応がなかったんだ・・・
もっかい調べなおしてみる
ありがとう
764デフォルトの名無しさん (ワッチョイ d108-MWTH)
垢版 |
2017/10/15(日) 21:51:37.18ID:DZC0OlhV0
>>757
建て増しする前の単純な仕様のscanfでさえ
%sしか攻撃できない空っぽ脳みそと
どうやってコミュしろというのか教えてくれ
765デフォルトの名無しさん (ワッチョイ 5975-dPak)
垢版 |
2017/10/15(日) 21:56:59.72ID:kn6M0KEM0
>>763
プロジェクト作成しないとビルドできない
2017/10/15(日) 22:38:21.05ID:kUtdNYE20
開発環境はvim+gccだろ?
767デフォルトの名無しさん (ワッチョイ fbe7-ceAT)
垢版 |
2017/10/16(月) 05:28:44.80ID:6Nh3McCV0
C言語知ってたらC++簡単に扱える?
2017/10/16(月) 05:48:39.32ID:imM7X4iq0
基本的に別の言語
2017/10/16(月) 06:10:08.45ID:00rzJKO2d
vs2017ならフォルダを開くで
勝手にプロジェクトが作られるんじゃなかったかな
2017/10/16(月) 06:35:40.79ID:IzFutT5/0
開発環境はvim+gcc、そしてmakeだな。

人に勧めようとは思わないけどね。
771デフォルトの名無しさん (ワッチョイ fbe7-ceAT)
垢版 |
2017/10/16(月) 06:42:19.28ID:6Nh3McCV0
まあ入出力でCとC++で違うのは解ってたけど本読んで書いてあったのはC++で書いて動かなかったら
最悪Cで書けば動かせるということは書いてあったな
772デフォルトの名無しさん (ササクッテロロ Sp45-NqOW)
垢版 |
2017/10/16(月) 11:15:45.26ID:tZR41NVXp
つか、コマンドラインアプリで文字列受け取るのは、実行時引数だけで充分だろ。
2017/10/16(月) 13:10:18.09ID:IgMp2p2X0
パイプやリダイレクト
774デフォルトの名無しさん (ワッチョイ 09b3-NqOW)
垢版 |
2017/10/16(月) 14:21:36.48ID:JrEYnkdn0
対話型ツールなら、きちんと入力解析エンジン載せれや。
なんだよscanfってw
2017/10/16(月) 14:22:15.72ID:QsDGIdoW0
gccのワーニングで、「declared inside parameter list」これを無視したいです。
-Wではじまるオプションはなにを指定すればよろしいですか?

#pragma GCC diagnostic ignored "-W???
2017/10/16(月) 14:30:52.70ID:XYyvKIYbd
>>775
[enabled by default]と書いてあるだろ? この警告はフラグで消せない。アホなコードを直すしかない。
2017/10/16(月) 14:47:20.37ID:QsDGIdoW0
>>776
フラグ以外での除去方法もないのでしょうか?
大量にでるために困っています
2017/10/16(月) 14:50:42.52ID:XYyvKIYbd
>>777
警告は、引数リストの外側で必要なものを宣言すべきという意味だ。
2017/10/16(月) 14:55:55.53ID:IgMp2p2X0
https://ideone.com/91sohX
へぇ 構造体のポインタだし通しそうだけど警告出す仕様なのか
(3行目 実体は不明だけど構造体のポインタを受け取るぞ宣言で警告)
2017/10/16(月) 14:58:01.40ID:rvbv2fod0
>>775
gcc -w
2017/10/16(月) 14:58:20.84ID:XYyvKIYbd
関数の前にstruct aho;とでも書いておけ。
782デフォルトの名無しさん (ワッチョイ fb8a-z1uI)
垢版 |
2017/10/16(月) 15:04:51.05ID:QsDGIdoW0
>>778
原因はわかっています。
構造体宣言を別のヘッダーで行っているにもかかわらず、
プロトタイプ宣言しているヘッダーより上に定義がないのが原因です

>>780
gcc -w ?
#pragma GCC diagnostic ignored "-w" でしょうか?
2017/10/16(月) 15:09:07.34ID:IgMp2p2X0
本当の定義じゃなくて 仮定義を前に置くだけで消えるのな
struct foo;
void func(struct foo* arg);
784sage (ワッチョイ fb8a-z1uI)
垢版 |
2017/10/16(月) 15:25:30.24ID:QsDGIdoW0
>>783
やはりそのように潰していくしかないのでしょうね。
2017/10/16(月) 15:43:34.17ID:rvbv2fod0
>>782
-Wで始まるオプション名は無いので無視するにはコマンドラインで-wを指定するしかない
786デフォルトの名無しさん (ワッチョイ 799f-vMUl)
垢版 |
2017/10/16(月) 22:46:04.81ID:snZUUJVe0
>>784
いや、てか、そのヘッダ書き換えられないのか?
787デフォルトの名無しさん (ササクッテロロ Sp45-NqOW)
垢版 |
2017/10/16(月) 22:49:48.00ID:tZR41NVXp
自身のポインタを構造体に宣言するのと同じ様に書けよ。
2017/10/16(月) 23:21:23.22ID:7Byc8Q4r0
>>767
C 高級アセンブラ
++ ハナモゲラ
789デフォルトの名無しさん (ワッチョイ 09b3-XdBn)
垢版 |
2017/10/17(火) 20:18:22.83ID:Q3d5MYhb0
とりあえず勉強の成果として作ってみたら失敗した
なんでだ

#include <stdio.h>

int main(void)
{
int hyoji;
int kakikomi;
printf("階乗の表示:");
scanf("%d\n",&kakikomi);
for (hyoji = 1;kakikomi > 0;kakikomi--) {
hyoji = hyoji * kakikomi;
}
printf("結果は%dです", hyoji);

fflush(stdin);
getchar();

return 0;

}
790デフォルトの名無しさん (ガックシ 06eb-dPak)
垢版 |
2017/10/17(火) 20:29:18.04ID:FJCAd6676
>>789
scanfのところの\nって要らなくね
791デフォルトの名無しさん (ササクッテロロ Sp45-NqOW)
垢版 |
2017/10/17(火) 20:54:03.89ID:Usq7nzejp
こんなすぐに桁溢れしちまう様なサンプル作ったら、何を試したいのかわからんだろ。
2017/10/17(火) 21:06:51.02ID:BSHBGdow0
しかしてfor文の中身を見るに全くの素人じゃあないな
793デフォルトの名無しさん (ワッチョイ 09b3-FNzi)
垢版 |
2017/10/17(火) 21:08:48.81ID:Q3d5MYhb0
>>790
消したら動いた
ありがとう
2017/10/17(火) 21:24:15.93ID:0jVjcAN80
>>792
どのあたりが?
795デフォルトの名無しさん (ササクッテロロ Sp45-NqOW)
垢版 |
2017/10/17(火) 21:33:12.55ID:Usq7nzejp
初期化をあんなとこに書いたらコーディング規約で叩かれるしなぁ〜
2017/10/17(火) 21:46:54.15ID:fHKaWaxJM
>>794
forのカッコ内には同じ変数しか書いちゃダメって思ってる初心者はいるかも
個人的には変数名からCOBOLer疑惑の方が強い気がする
797デフォルトの名無しさん (ワッチョイ 09b3-FNzi)
垢版 |
2017/10/17(火) 21:57:54.65ID:Q3d5MYhb0
VS2017でやってるんだがさっき作ったプログラムを保存して別のファイルで勉強を再開しようとして新しくファイルを作ったんだ
そしてテストも兼ねてさっきのプログラムコピペしたら
プリコンパイルヘッダーを検索中に不明なEOFが見つかりました。
'#include"stdafx.h"をソースに追加しましたか?
と出た
さっきは何もなかったのに
798デフォルトの名無しさん (ワッチョイ 5975-dPak)
垢版 |
2017/10/17(火) 22:19:31.03ID:PpmRGT3a0
>>797
それな
よく分からんけど空のプロジェクトってやつでプロジェクト作って自分でソースファイル作成すれば出てこない
まあ詳しい人が教えてくれるかも
2017/10/17(火) 22:26:24.33ID:/2LkUivAd
>>797
プリコンパイルヘッダーというのは、プロジェクト内のヘッダーを事前にまとめてコンパイルしてビルドを早くする仕組みのことだ。
通常、stdafx.hというヘッダーにプロジェクトで使うヘッダーをまとめる。
一つ一つのソースファイルごとのプロパティでプリコンパイルヘッダーを作成するか、使用するかを設定できる。
800デフォルトの名無しさん (ワッチョイ 09b3-FNzi)
垢版 |
2017/10/17(火) 22:30:05.39ID:Q3d5MYhb0
>>799
つまり…どういうことだってばよ
801デフォルトの名無しさん (ワッチョイ 09b3-FNzi)
垢版 |
2017/10/17(火) 22:35:56.33ID:Q3d5MYhb0
ソースコード関係の知識は苦Cやらで積めるけどソフトやらの知識はどこで積むんだ
2017/10/17(火) 22:36:28.37ID:/2LkUivAd
プリコンパイルヘッダーを使用するのであれば、プロジェクト内のどこかのソースファイル(例えばstdafx.cpp)を使って、プリコンパイルヘッダーを作成しないといけない。
あるソースファイルにおいてプリコンパイルヘッダーを使用するのであれば、プリコンパイル対象のヘッダーを#includeして、そのソースファイルがプリコンパイルヘッダーを使用することを設定する。
プリコンパイルヘッダーを使用しないなら、すべてのソースのプロパティでプリコンパイルヘッダーを使用しないように設定する(空のプロジェクトの規定値)。
2017/10/17(火) 22:39:12.15ID:/2LkUivAd
ソースファイルが二、三個なら、とくにプリコンパイルヘッダーは、必要ない。
2017/10/17(火) 22:43:34.43ID:kMB04QqG0
>>800
おとなしく>>798の言う通りにしろってこと
2017/10/17(火) 22:44:21.68ID:/2LkUivAd
ソースファイルのプロパティは、IDE内のソースファイルのアイコンを右クリックして「プロパティ」を選ぶと設定できる。
806デフォルトの名無しさん (ワッチョイ 09b3-FNzi)
垢版 |
2017/10/17(火) 22:59:14.26ID:Q3d5MYhb0
>>804
とりあえず空のファイルは作れたけどソースが書けん
807デフォルトの名無しさん (ワッチョイ 5975-dPak)
垢版 |
2017/10/17(火) 23:01:36.30ID:PpmRGT3a0
新しいプロジェクト

空のプロジェクトを作成

空のソースコードファイルを追加

>>789をコピペ

実行
808デフォルトの名無しさん (ワッチョイ 09b3-FNzi)
垢版 |
2017/10/17(火) 23:02:26.49ID:Q3d5MYhb0
>>807
空のソースコードファイルどうやって作るんだ
809デフォルトの名無しさん (ワッチョイ 5975-dPak)
垢版 |
2017/10/17(火) 23:08:36.86ID:PpmRGT3a0
>>808
プロジェクト開いたときの右にあるソリューションエクスプローラの中のソースファイルというフォルダを右クリックして「追加」から「新しい項目」をクリック。
「C++ファイル」を選択した状態でファイル名の拡張子を.cに変えて「追加」ボタンを押す。
810デフォルトの名無しさん (ワッチョイ 09b3-FNzi)
垢版 |
2017/10/17(火) 23:15:28.33ID:Q3d5MYhb0
>>809
できた
もしこれから新しくファイルを作る場合はこれを一からやるのか?
2017/10/17(火) 23:17:42.23ID:nwT4mK5H0
そろそろ適切なスレに移動しようか
812デフォルトの名無しさん (ワッチョイ 5975-dPak)
垢版 |
2017/10/17(火) 23:18:59.07ID:PpmRGT3a0
>>810
うん。
簡単なプログラムならVSでプロジェクト作るよりもスタートメニューのVSのフォルダの中にある開発者コマンドプロンプト使ってclコマンドでコンパイルした方が手軽だな
813デフォルトの名無しさん (ワッチョイ 09b3-FNzi)
垢版 |
2017/10/17(火) 23:21:25.70ID:Q3d5MYhb0
>>812
ありがとう
これ以上はスレチだからやめておこう
814デフォルトの名無しさん (ワッチョイ 5975-dPak)
垢版 |
2017/10/17(火) 23:46:56.11ID:PpmRGT3a0
スレチかもしれないけどVS2017でANSI C(C99/98, ブロック先頭でしか宣言できないやつ)だけしかかけないようにできますか?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況