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/
前
C言語なら俺に聞け 144
https://mevius.5ch.net/test/read.cgi/tech/1514025223/
次スレを立てる時は本文の1行目に以下を追加して下さい
!extend:on:vvvvv:1000:512
-
※前スレ
C言語なら俺に聞け 145
http://mevius.5ch.net/test/read.cgi/tech/1519046038/
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured
探検
C言語なら俺に聞け 146
レス数が950を超えています。1000を超えると書き込みができなくなります。
1デフォルトの名無しさん (ワッチョイ 839f-AnMQ)
2018/04/30(月) 04:47:37.50ID:XX4FB8lc0887デフォルトの名無しさん (ワッチョイ 4a8d-2km2)
2018/08/11(土) 21:58:41.55ID:VKOHvb3S0 floatとdoubleの値の範囲を教えてください。
-0.000034 < float < 0.000034
-0.00000000016 < long < 0.0000000016
みたいな感じで教えてください><
-0.000034 < float < 0.000034
-0.00000000016 < long < 0.0000000016
みたいな感じで教えてください><
888デフォルトの名無しさん (ワッチョイ 5f81-2km2)
2018/08/11(土) 22:22:37.58ID:v96Fcglg0 >>886
私も手元で確かめました、確かにこれは爆速ですね…私の古いPCでもf(1000万)までならば一瞬で答えが出ます。
私も手元で確かめました、確かにこれは爆速ですね…私の古いPCでもf(1000万)までならば一瞬で答えが出ます。
890デフォルトの名無しさん (ワッチョイ 6fc3-5rxo)
2018/08/11(土) 22:26:14.75ID:UyVMPuF50 C言語でゲームがアクションゲームが作りたくてプログラミングはじめた
実際にプログラミングって楽しいと感じてる
でも入門書通りソートアルゴリズムを勉強してて、基本交換法やら基本選択法は楽にフローチャートもコードも書けたのに、そのあとにやった クイックソートとか単純挿入法では面白いぐらい苦戦した(どっちももうできるようになったけど)
これって、俺のアルゴリズムを考える能力が乏しいってことなのかな
それともはじめはみんなこんなもの?
実際にプログラミングって楽しいと感じてる
でも入門書通りソートアルゴリズムを勉強してて、基本交換法やら基本選択法は楽にフローチャートもコードも書けたのに、そのあとにやった クイックソートとか単純挿入法では面白いぐらい苦戦した(どっちももうできるようになったけど)
これって、俺のアルゴリズムを考える能力が乏しいってことなのかな
それともはじめはみんなこんなもの?
891デフォルトの名無しさん (ワッチョイ 6fc3-5rxo)
2018/08/11(土) 22:26:40.35ID:UyVMPuF50 ×ゲームがアクションが
◯アクションゲームが
◯アクションゲームが
892デフォルトの名無しさん (ワッチョイ 4a12-oNxq)
2018/08/11(土) 22:35:15.61ID:d91dd04/0 再帰とポインタで躓くと昔から伝わっている
特に再帰は禅でもやって悟りを得ないと理解できない
特に再帰は禅でもやって悟りを得ないと理解できない
893さまよえる蟻人間 ◆T6xkBnTXz7B0 (スププ Sdea-cF9D)
2018/08/11(土) 22:35:57.56ID:/IS35TFAd だれでも最初は赤ちゃん歩き。私も最初はじゃんけんのプログラミングが全くできなかった。
894デフォルトの名無しさん (ワッチョイ 0b50-2km2)
2018/08/11(土) 22:42:41.92ID:N9ICkOCi0895デフォルトの名無しさん (ワッチョイ 0b50-2km2)
2018/08/11(土) 23:13:57.75ID:N9ICkOCi0 n log nより遅いように見えるのは
サイズが大きいとキャッシュから外れるため
フーリエ変換はメモリのランダムアクセスが頻発するので
キャッシュに入るかどうかで大きく時間が変わる
適当に並び変えながら変換することで
キャッシュヒット率を上げたり
メインメモリに収まりきらない巨大サイズをHDDを使いながら変換することも出来るのだが、
今回はシンプルさ重視の為見送り
世の中にある高速FFTライブラリに差し替えれば
もっと高速化する
サイズが大きいとキャッシュから外れるため
フーリエ変換はメモリのランダムアクセスが頻発するので
キャッシュに入るかどうかで大きく時間が変わる
適当に並び変えながら変換することで
キャッシュヒット率を上げたり
メインメモリに収まりきらない巨大サイズをHDDを使いながら変換することも出来るのだが、
今回はシンプルさ重視の為見送り
世の中にある高速FFTライブラリに差し替えれば
もっと高速化する
896デフォルトの名無しさん (ワッチョイ 0b50-2km2)
2018/08/11(土) 23:25:51.63ID:N9ICkOCi0 >>887
環境依存
float, double がそれぞれIEEE754のbinary32とbinary64準拠の場合はおおよそ
-3.4028234663852885981*10^38 ≦ float ≦ 3.4028234663852885981*10^38
-1.7976931348623157081*10^308 ≦ double ≦ 1.7976931348623157081*10^308
正確には以下の範囲
float : ±(2^24-1)*2^104
double : ±(2^53-1)*2^971
これに追加して±∞, NaN などがある
組み込みなどではdoubleも32bitであることも多い
環境依存
float, double がそれぞれIEEE754のbinary32とbinary64準拠の場合はおおよそ
-3.4028234663852885981*10^38 ≦ float ≦ 3.4028234663852885981*10^38
-1.7976931348623157081*10^308 ≦ double ≦ 1.7976931348623157081*10^308
正確には以下の範囲
float : ±(2^24-1)*2^104
double : ±(2^53-1)*2^971
これに追加して±∞, NaN などがある
組み込みなどではdoubleも32bitであることも多い
897デフォルトの名無しさん (ワッチョイ 0b50-2km2)
2018/08/11(土) 23:33:36.42ID:N9ICkOCi0 C言語スレだから ^ は排他的論理和の意味で使うべきでしたかね
-340282346638528859811704183484516925440 ≦ binary32 ≦ 340282346638528859811704183484516925440
-1797693134862315708145274237317043567980705675258449965989174768
0315726078002853876058955863276687817154045895351438246423432132
6889464182768467546703537516986049910576551282076245490090389328
9440758685084551339423045832369032229481658085593321233482747978
26204144723168738177180919299881250404026184124858368
≦ binary64 ≦
1797693134862315708145274237317043567980705675258449965989174768
0315726078002853876058955863276687817154045895351438246423432132
6889464182768467546703537516986049910576551282076245490090389328
9440758685084551339423045832369032229481658085593321233482747978
26204144723168738177180919299881250404026184124858368
-340282346638528859811704183484516925440 ≦ binary32 ≦ 340282346638528859811704183484516925440
-1797693134862315708145274237317043567980705675258449965989174768
0315726078002853876058955863276687817154045895351438246423432132
6889464182768467546703537516986049910576551282076245490090389328
9440758685084551339423045832369032229481658085593321233482747978
26204144723168738177180919299881250404026184124858368
≦ binary64 ≦
1797693134862315708145274237317043567980705675258449965989174768
0315726078002853876058955863276687817154045895351438246423432132
6889464182768467546703537516986049910576551282076245490090389328
9440758685084551339423045832369032229481658085593321233482747978
26204144723168738177180919299881250404026184124858368
898デフォルトの名無しさん (ワッチョイ 0b50-2km2)
2018/08/11(土) 23:41:42.36ID:N9ICkOCi0 >>888
単純なバグでした
size_t が64bit前提の部分があったのと、
非常に恥ずかしいですが以下のような動作不定なコードがありました
a->data[i++] = b->data[i] + carry;
私のローカル環境だとたまたま動いていたようです
intが16bitだとまだヤバそうですが、
16bit環境で動かすことはないと思うので気にしないことにします
単純なバグでした
size_t が64bit前提の部分があったのと、
非常に恥ずかしいですが以下のような動作不定なコードがありました
a->data[i++] = b->data[i] + carry;
私のローカル環境だとたまたま動いていたようです
intが16bitだとまだヤバそうですが、
16bit環境で動かすことはないと思うので気にしないことにします
899デフォルトの名無しさん (ワッチョイ 4a8d-2km2)
2018/08/11(土) 23:47:51.76ID:VKOHvb3S0900デフォルトの名無しさん (ワッチョイ 0b50-2km2)
2018/08/11(土) 23:56:09.61ID:N9ICkOCi0901デフォルトの名無しさん (ワッチョイ 5f81-2km2)
2018/08/12(日) 00:23:34.17ID:BxiB5wa+0 >>898
ideoneだと100万ちょっと下でRuntimeErrorで途中でとまってるぽいね
ideoneだと100万ちょっと下でRuntimeErrorで途中でとまってるぽいね
902デフォルトの名無しさん (アウアウエー Sac2-+AzL)
2018/08/12(日) 07:44:42.21ID:P7wTPSJQa 蛇とJSとアセンブラ少しかじったんだけどCの効率的な勉強法ある?
主に蛇のチューニングと、これから勉強する予定なんだけど組み込み用マイコンのプログラムを書くために使う
小型のドローンもどきにのせたマイコンに、学習済みパターンをのせて動作制御したい
主に蛇のチューニングと、これから勉強する予定なんだけど組み込み用マイコンのプログラムを書くために使う
小型のドローンもどきにのせたマイコンに、学習済みパターンをのせて動作制御したい
903デフォルトの名無しさん (ワッチョイ 0b50-+oCX)
2018/08/12(日) 07:46:52.98ID:3JJNsMDc0 蛇?
904デフォルトの名無しさん (アウアウエー Sac2-+AzL)
2018/08/12(日) 07:47:28.70ID:P7wTPSJQa ぱいそん
905デフォルトの名無しさん (ワッチョイ 0b50-+oCX)
2018/08/12(日) 07:52:36.70ID:3JJNsMDc0 アセンブラをかじったのならCの習得は速そう
組み込みマイコンはどんなやつ?
組み込みマイコンはどんなやつ?
906デフォルトの名無しさん (アウアウエー Sac2-+AzL)
2018/08/12(日) 07:57:10.98ID:P7wTPSJQa 聞いといて申し訳ないんだけど全然知らないんだよね門外漢で
シンプリンク?とか言うやつでいいかなと思ってるけど、種類により出来ること出来ないことも分からない
シンプリンク?とか言うやつでいいかなと思ってるけど、種類により出来ること出来ないことも分からない
907デフォルトの名無しさん (ワッチョイ 0b50-+oCX)
2018/08/12(日) 08:08:39.25ID:3JJNsMDc0 文法をざっくり本とかで覚えたらあとは実践
高速化なら具体例を提示すれば私がアドバイスしますよ
高速化する場合はクリティカルポイントを絞ってから
時間がかからない所は高速化せずにそのままにしておくこと
アルゴリズムや式など、
上位の改良の方が高速化に寄与しやすいので
まずは上の方から考えること
下を高速化することで上が見にくくなって上の改良を妨げるようじゃ本末転倒なので
高速化なら具体例を提示すれば私がアドバイスしますよ
高速化する場合はクリティカルポイントを絞ってから
時間がかからない所は高速化せずにそのままにしておくこと
アルゴリズムや式など、
上位の改良の方が高速化に寄与しやすいので
まずは上の方から考えること
下を高速化することで上が見にくくなって上の改良を妨げるようじゃ本末転倒なので
908デフォルトの名無しさん (ワッチョイ 0b50-+oCX)
2018/08/12(日) 08:10:55.02ID:3JJNsMDc0909デフォルトの名無しさん (アウアウエー Sac2-+AzL)
2018/08/12(日) 08:15:31.91ID:P7wTPSJQa910デフォルトの名無しさん (ワッチョイ c6e7-AlRe)
2018/08/12(日) 08:25:40.14ID:El938M/O0 アルゴリズムなど分からないですが、プログラムが出来るようになりますか?
911デフォルトの名無しさん (ワッチョイ 9e01-2km2)
2018/08/12(日) 08:40:26.57ID:2Xoj+DoI0 >>909
ISBN 4-320-02692-6
ISBN 4-320-02692-6
912デフォルトの名無しさん (ワッチョイ 0b23-BtOx)
2018/08/12(日) 09:27:40.23ID:eabwfPDR0 >>909
苦しんで覚えるC言語
https://9cguide.appspot.com
書籍版:ISBN 978-4798030142
>>911の本は古い記法だったはずだから初学者向けではないと思う
苦しんで覚えるC言語
https://9cguide.appspot.com
書籍版:ISBN 978-4798030142
>>911の本は古い記法だったはずだから初学者向けではないと思う
913デフォルトの名無しさん (ワッチョイ 9e01-2km2)
2018/08/12(日) 09:36:27.44ID:2Xoj+DoI0 古い記法ってこれか?
main(argc, argv)
char **argv;
{
int i 0;
while (i < argc) printf("%s ", argv[i =+ 1]);
return (0);
}
main(argc, argv)
char **argv;
{
int i 0;
while (i < argc) printf("%s ", argv[i =+ 1]);
return (0);
}
914デフォルトの名無しさん (ブーイモ MM4f-oNxq)
2018/08/12(日) 10:04:57.52ID:sdNRpf8zM >>911
K&Rって言えよ。余計わかりにくい。
>>909
K&Rは「既にプログラミングできる人がCの文法を覚える用」だから、本当に最小セットしか乗ってない。
ただ、それでいい人=上級者からは絶賛されてる。彼らにとってはいわゆる入門書は冗長すぎるから。
十分にPythonと『アセンブラ』を使え、文法だけ知ればいけるのなら、K&Rはすごくいい。
PythonやJS等の上級言語しか使ったことなく、ポインタって何?なら、
殆どの人はポインタで躓くので、K&Rだけではかなり厳しいと思う。
アセンブラのインデックスレジスタがポインタそのものなのだが、ピンと来るか?
ピンと来るなら、まずK&R買って、だめなら入門書でいいと思う。
意味不明だと思うのなら、最初から入門書を買え。
K&Rって言えよ。余計わかりにくい。
>>909
K&Rは「既にプログラミングできる人がCの文法を覚える用」だから、本当に最小セットしか乗ってない。
ただ、それでいい人=上級者からは絶賛されてる。彼らにとってはいわゆる入門書は冗長すぎるから。
十分にPythonと『アセンブラ』を使え、文法だけ知ればいけるのなら、K&Rはすごくいい。
PythonやJS等の上級言語しか使ったことなく、ポインタって何?なら、
殆どの人はポインタで躓くので、K&Rだけではかなり厳しいと思う。
アセンブラのインデックスレジスタがポインタそのものなのだが、ピンと来るか?
ピンと来るなら、まずK&R買って、だめなら入門書でいいと思う。
意味不明だと思うのなら、最初から入門書を買え。
915デフォルトの名無しさん (ワッチョイ cab3-AKsU)
2018/08/12(日) 10:22:27.82ID:sFpP4hR50916デフォルトの名無しさん (アウアウエー Sac2-+AzL)
2018/08/12(日) 10:28:59.49ID:P7wTPSJQa ありがとう
とりあえず苦Cは確定で、メインとしてK&R 使えるか本屋で見てくる
正直上級者どころか初心者を脱したかどうかレベルだから合わないかもだが
数学でチューリングマシンがーって机上の勉強やってたからかアセンブラはすんなりいった
行けそうだったらK&R使ってみる
てことで本屋行ってくる
とりあえず苦Cは確定で、メインとしてK&R 使えるか本屋で見てくる
正直上級者どころか初心者を脱したかどうかレベルだから合わないかもだが
数学でチューリングマシンがーって机上の勉強やってたからかアセンブラはすんなりいった
行けそうだったらK&R使ってみる
てことで本屋行ってくる
917デフォルトの名無しさん (スップ Sdea-+oCX)
2018/08/12(日) 11:20:48.05ID:1gNSypiFd チューリングマシンは数学板の巨大数スレッドで
よく話題にあがるので
ご教授しに来ていただけるとうれしいです
よく話題にあがるので
ご教授しに来ていただけるとうれしいです
918デフォルトの名無しさん (ブーイモ MM4f-oNxq)
2018/08/12(日) 11:36:54.26ID:zEU3SQsmM >>916
> 数学でチューリングマシンがーって机上の勉強やってたからかアセンブラはすんなりいった
これって理論畑から行くとチューリングマシンがプログラミングより先に来るんか?
正直、それが何の役に立つのかはよく分からんが…
> 数学でチューリングマシンがーって机上の勉強やってたからかアセンブラはすんなりいった
これって理論畑から行くとチューリングマシンがプログラミングより先に来るんか?
正直、それが何の役に立つのかはよく分からんが…
919デフォルトの名無しさん (スップ Sdea-+oCX)
2018/08/12(日) 11:45:51.35ID:1gNSypiFd コンピューター言語で記述出来る事の限界がわかる
実際のコーディング技術はあまり関係ないと思う
実際のコーディング技術はあまり関係ないと思う
920デフォルトの名無しさん (スップ Sdea-+oCX)
2018/08/12(日) 11:48:28.53ID:1gNSypiFd 全ての命令に、次に実行する命令のアドレスを指定出来るようなCPUがあるが
これはちょっと近いか
これはちょっと近いか
921デフォルトの名無しさん (ブーイモ MM4f-oNxq)
2018/08/12(日) 12:31:18.04ID:zEU3SQsmM >>919
それって自然言語に対してって事?
なら逆にチューリングマシンの範囲を超える事象って何?
単純に言えば、それは未来永劫今の構造のCPUでは無理ってことになるはずだが、
そんな分野があるのか?
それって自然言語に対してって事?
なら逆にチューリングマシンの範囲を超える事象って何?
単純に言えば、それは未来永劫今の構造のCPUでは無理ってことになるはずだが、
そんな分野があるのか?
922デフォルトの名無しさん (スップ Sdea-+oCX)
2018/08/12(日) 14:06:00.94ID:1gNSypiFd >>921
ある
ある
923デフォルトの名無しさん (スップ Sdea-+oCX)
2018/08/12(日) 14:09:23.49ID:1gNSypiFd プログラムの停止判定とか
乱数生成とか
非常に増加量の大きな関数とか
乱数生成とか
非常に増加量の大きな関数とか
924デフォルトの名無しさん (スププ Sdea-mlTV)
2018/08/12(日) 14:17:10.15ID:BCWcLjTed P≠NP問題をご存知ない?
925デフォルトの名無しさん (スップ Sdea-+oCX)
2018/08/14(火) 09:46:10.53ID:KzkkOfFYd926デフォルトの名無しさん (スプッッ Sd8a-J+gX)
2018/08/15(水) 06:16:23.73ID:fPb+tE65d Java屋なんですけど自己啓発のために学生時代以来のCを夏休みに勉強しようと思ってます
開発環境のオススメを教えてください
自分が思いつくところでは…
・Vimとgcc
・VScode
・eclipse
こんな所ですが皆さんどうされてますか?
MacもWindowsも両方手元にはあります
開発環境のオススメを教えてください
自分が思いつくところでは…
・Vimとgcc
・VScode
・eclipse
こんな所ですが皆さんどうされてますか?
MacもWindowsも両方手元にはあります
927デフォルトの名無しさん (ワッチョイ 0b50-+oCX)
2018/08/15(水) 08:44:48.25ID:NFQKBcxz0 開発環境なんて何でもいいから
さっさと勉強しなさい
さっさと勉強しなさい
928デフォルトの名無しさん (ワッチョイ cab3-AKsU)
2018/08/15(水) 09:12:26.87ID:o8lgioa70 >>926
組み込みとかで特定のコンパイラ使うとかならVSCodeでいいと思うが、そうでないなら普通にVisual Studioでいいと思う
組み込みとかで特定のコンパイラ使うとかならVSCodeでいいと思うが、そうでないなら普通にVisual Studioでいいと思う
929デフォルトの名無しさん (ワッチョイ 4a12-oNxq)
2018/08/15(水) 11:22:04.73ID:mhFNubNm0 IDEが無い時代の開発を体験してみるという修行をしたいのならテキストエディタとコマンドラインだけでやる
これは啓発効果が高い
これは啓発効果が高い
930デフォルトの名無しさん (ワッチョイ 8a73-/icg)
2018/08/15(水) 12:03:22.86ID:YVF6Ac/t0 俺は未だにターミナルとエディター
これ以上の快適さを知らないし知るつもりもない
これ以上の快適さを知らないし知るつもりもない
931デフォルトの名無しさん (ワッチョイ cab3-AKsU)
2018/08/15(水) 12:10:42.58ID:o8lgioa70 別にいいんじゃね?
ターミナル最高だからお前らも使え!
とか言わなきゃ
ターミナル最高だからお前らも使え!
とか言わなきゃ
932デフォルトの名無しさん (スップ Sdea-+oCX)
2018/08/15(水) 12:11:49.41ID:PVw+eqmQd EDLIN最高
933デフォルトの名無しさん (ワッチョイ ca9f-QP/R)
2018/08/15(水) 12:43:52.85ID:1lipv2et0 Vimと言いたいところだが最近はもっぱらVSCodeばかり
934デフォルトの名無しさん (ワッチョイ 9e01-2km2)
2018/08/15(水) 14:46:36.23ID:bAZUebux0 俺は超初心者時代をTurbo Cで、
中級以後はviとccでおぼえた
ただし常に他の環境も色々使ってみてた
中級以後はviとccでおぼえた
ただし常に他の環境も色々使ってみてた
935デフォルトの名無しさん (スッップ Sdea-mlTV)
2018/08/15(水) 14:58:02.44ID:1MwRKcc7d VisualStudioで良いとか口が裂けても言えねぇよ
MSVCはこのご時世ですらpure CはC89だぞ?
初心者で知らないならともかくこういうスレでVSをCの環境として勧める奴何者だよ
MSVCはこのご時世ですらpure CはC89だぞ?
初心者で知らないならともかくこういうスレでVSをCの環境として勧める奴何者だよ
936デフォルトの名無しさん (アウアウカー Sacb-QP/R)
2018/08/15(水) 15:30:10.79ID:NhDv8JXAa gccもclangもインテルコンパイラーもc99さえ100%準拠してないだろ
何でmsvcだけ槍玉あげてんの?
何でmsvcだけ槍玉あげてんの?
937デフォルトの名無しさん (スップ Sdea-+oCX)
2018/08/15(水) 15:44:09.01ID:PVw+eqmQd C89/90から覚えれば良い
あとはおまけ
Cが使われるのなんて今時組み込みくらいだ
組み込み用コンパイラだといまだC89/90が多い
あとはおまけ
Cが使われるのなんて今時組み込みくらいだ
組み込み用コンパイラだといまだC89/90が多い
938デフォルトの名無しさん (スップ Sdea-+oCX)
2018/08/15(水) 15:45:48.23ID:PVw+eqmQd いろんなコンパイラ、いろんな環境を使って見るのも良い
8bit、RAM64バイトみたいなチープな環境とか
8bit、RAM64バイトみたいなチープな環境とか
939デフォルトの名無しさん (アウアウウー Sa2f-02HX)
2018/08/15(水) 15:46:05.90ID:cYF20yina いや、組込開発環境なんてgccばっかりだからC99が標準だよ。
まあ妙に保守的なひとがいて古い文法を強制するんだけど…
まあ妙に保守的なひとがいて古い文法を強制するんだけど…
940デフォルトの名無しさん (スップ Sdea-+oCX)
2018/08/15(水) 15:48:33.27ID:PVw+eqmQd 組み込みに標準なんて無い
各社いろいろだ
各社いろいろだ
941デフォルトの名無しさん (ワッチョイ 1b9f-x/tb)
2018/08/15(水) 15:59:23.74ID:BN2igdfy0 そういやLinuxとかのCUIでTurboCみたいな環境ってあるのかな?
あると外部からsshでログインしている時に使えて良いのだが。
あると外部からsshでログインしている時に使えて良いのだが。
942デフォルトの名無しさん (アウアウウー Sa2f-02HX)
2018/08/15(水) 16:22:31.09ID:fRV95OwVa943デフォルトの名無しさん (スップ Sdea-+oCX)
2018/08/15(水) 16:28:18.26ID:PVw+eqmQd >>942
細かい表記とかよりももっと大きな事を気にした方がいいぞ
細かい表記とかよりももっと大きな事を気にした方がいいぞ
944デフォルトの名無しさん (ワッチョイ 1b9f-x/tb)
2018/08/15(水) 17:03:06.47ID:BN2igdfy0945デフォルトの名無しさん (アウアウウー Sa2f-02HX)
2018/08/15(水) 17:04:43.75ID:hzdQdpXra >>943
大きいことって、15年前の環境でコンパイルできることだろ?
大きいことって、15年前の環境でコンパイルできることだろ?
946デフォルトの名無しさん (ワッチョイ 0b93-6ZXu)
2018/08/15(水) 17:13:57.27ID:2ovpzQjs0 vimでエディットして :make でビルド、
エラーや警告は quickfix 機能でシラミ潰し。
強く薦める気はないし、他の人に使い方を教えるほどの技量はないけど、
個人的にはこの組み合わせが便利だわ。
errorformat オプションを設定すれば、どんなコンパイラや変換ツールでも
ソースファイルのエラー箇所を呼び出してくれるからね。
エラーや警告は quickfix 機能でシラミ潰し。
強く薦める気はないし、他の人に使い方を教えるほどの技量はないけど、
個人的にはこの組み合わせが便利だわ。
errorformat オプションを設定すれば、どんなコンパイラや変換ツールでも
ソースファイルのエラー箇所を呼び出してくれるからね。
947デフォルトの名無しさん (ワッチョイ 9ff2-2km2)
2018/08/15(水) 17:24:36.77ID:/SQznhgr0 C99じゃないと困ることなんてそんなにないしな。わざわざC++と互換性ないコード書くメリットもない。
948デフォルトの名無しさん (ワッチョイ de23-BtOx)
2018/08/15(水) 17:36:19.98ID:tGPywhyN0 C89だとforの初期化のときに新しく変数を宣言できないじゃん
949デフォルトの名無しさん (ワッチョイ 9e01-2km2)
2018/08/15(水) 17:48:50.30ID:bAZUebux0 コンパイラは案件による、それだけ
C99を使う案件でC89がどうたらぬかすのはただのアホ
逆もまたしかり
C99を使う案件でC89がどうたらぬかすのはただのアホ
逆もまたしかり
950デフォルトの名無しさん (アウアウウー Sa2f-02HX)
2018/08/15(水) 17:52:57.43ID:cYF20yina C++とCだとファイル分けるでしょ?
951デフォルトの名無しさん (ワッチョイ 9ff2-2km2)
2018/08/15(水) 17:56:50.28ID:/SQznhgr0 そういう意味じゃたしかに、C99規格に入れられたいくつかの機能は便利だ。
なので訂正する↓
msvcがC99準拠じゃないからといって困ることなんてそんなにないしな。
なので訂正する↓
msvcがC99準拠じゃないからといって困ることなんてそんなにないしな。
952デフォルトの名無しさん (ブーイモ MM27-vObg)
2018/08/15(水) 17:58:30.01ID:/kIK810yM 自己啓発の勉強ならC89で困ることとかなんかあるんだろうか?
953デフォルトの名無しさん (ワッチョイ 0b93-6ZXu)
2018/08/15(水) 17:59:04.25ID:2ovpzQjs0 //コメントと、どこでも変数宣言、がダメってのは辛いのよね。
エラーを直すのは簡単だけど、いかにもバカバカしい作業で。
エラーを直すのは簡単だけど、いかにもバカバカしい作業で。
954デフォルトの名無しさん (ワッチョイ 63e7-AujL)
2018/08/15(水) 18:00:49.89ID:PyNbth/v0 他人に教えるなら標準は尊重しよう
955デフォルトの名無しさん (ブーイモ MM27-oNxq)
2018/08/15(水) 19:26:07.57ID:kg5weZ+NM VSでC++環境使ってC文法だけで組めばよくね?
それ以前に環境なんてどれでもいい、とは思うが。
JavaでEclipseに慣れてるのならそれもありだと思うよ。
環境で躓くこと自体が無駄だよ。
そもそもJava分かっててCの練習なら、ポインタと変数の寿命管理だけだろ。
GUIでなければ、寿命管理は全部入れ子の構造化プログラミング徹底で済んでしまうし、今時CでGUIもない。
結果的にポインタだけなのだから、環境なんて何でもいいと思うが。
その上で、現場で古い文法を使う必要があるのなら、その時に慣れればいいだけで。
環境なんて全くどれでもいいだろ、これなら。
emacs毛嫌いしている奴がいるのもよく分からんが。
Ctrl+Fとか覚えたくなければ、カーソルキー使えばいいだけだろ。
emacs使いでも、よほどコアな奴でない限り、EmacsLispなんて書いてないぞ。俺も書けんし。
それ以前に環境なんてどれでもいい、とは思うが。
JavaでEclipseに慣れてるのならそれもありだと思うよ。
環境で躓くこと自体が無駄だよ。
そもそもJava分かっててCの練習なら、ポインタと変数の寿命管理だけだろ。
GUIでなければ、寿命管理は全部入れ子の構造化プログラミング徹底で済んでしまうし、今時CでGUIもない。
結果的にポインタだけなのだから、環境なんて何でもいいと思うが。
その上で、現場で古い文法を使う必要があるのなら、その時に慣れればいいだけで。
環境なんて全くどれでもいいだろ、これなら。
emacs毛嫌いしている奴がいるのもよく分からんが。
Ctrl+Fとか覚えたくなければ、カーソルキー使えばいいだけだろ。
emacs使いでも、よほどコアな奴でない限り、EmacsLispなんて書いてないぞ。俺も書けんし。
956デフォルトの名無しさん (ワッチョイ 1b9f-x/tb)
2018/08/15(水) 19:29:59.75ID:BN2igdfy0 viのキーバインドになってないと体が覚えるまで面倒
957デフォルトの名無しさん (ブーイモ MM27-oNxq)
2018/08/15(水) 19:42:07.19ID:kg5weZ+NM キーバインド自体は対応させるELが有ってもおかしく無いと思うけど。
(emacs教団の入会基準があのキーバインドに慣れることでも無かろう)
むしろ編集モード/閲覧モードを持つviの方がエディタとしては異端だ。
他の通常エディタに慣れたらviは無理だと思うが。
とはいえ、どっちも使えるって奴も聞かないので、
vi派なら今更emacsに慣れる必要は無いと思うが。
同様に、JavaでEclipseに慣れてるのなら、VSに慣れる必要もないし、そのままやった方がいいと思うよ。
何も知らなくて環境の立ち上げすら面倒なら、
VSならインストールさえすればクリックでビルド&デバッグ実行まで出来るから楽ってだけで。
(emacs教団の入会基準があのキーバインドに慣れることでも無かろう)
むしろ編集モード/閲覧モードを持つviの方がエディタとしては異端だ。
他の通常エディタに慣れたらviは無理だと思うが。
とはいえ、どっちも使えるって奴も聞かないので、
vi派なら今更emacsに慣れる必要は無いと思うが。
同様に、JavaでEclipseに慣れてるのなら、VSに慣れる必要もないし、そのままやった方がいいと思うよ。
何も知らなくて環境の立ち上げすら面倒なら、
VSならインストールさえすればクリックでビルド&デバッグ実行まで出来るから楽ってだけで。
958デフォルトの名無しさん (スップ Sdea-+oCX)
2018/08/15(水) 20:00:10.97ID:PVw+eqmQd いろいろ使いたければC++を使えば良いんだよ
new delete 例外 stl を使わなくてもCより便利だろ
C++じゃなくてわざわざCを覚えたいって言うからには
何か理由があるんだろう
new delete 例外 stl を使わなくてもCより便利だろ
C++じゃなくてわざわざCを覚えたいって言うからには
何か理由があるんだろう
959デフォルトの名無しさん (ブーイモ MM27-oNxq)
2018/08/15(水) 20:08:35.17ID:kg5weZ+NM ちなみに、CとC++を明確に区別してるのって、C使いとC++使いだけだろ。
他はだいたいC/C++扱いだし、926もそうだと思うが。
他はだいたいC/C++扱いだし、926もそうだと思うが。
960デフォルトの名無しさん (アウアウウー Sa2f-02HX)
2018/08/15(水) 20:21:36.71ID:53ohHsaIa まあでかいプログラムはC++で書いてれば良かったと思うようになるよ。
でもC++で書かれたクソコードというのはCのそれの比ではないので、品質のコントロールは問題になる。
でもC++で書かれたクソコードというのはCのそれの比ではないので、品質のコントロールは問題になる。
961デフォルトの名無しさん (ワッチョイ 9ff2-2km2)
2018/08/15(水) 20:22:57.45ID:/SQznhgr0 C99はC++の拡張を取り入れるんならC++98と互換性が取れるところで一旦〆れば
よかったものを、なんで要らん独自性を出したかねぇ。
よかったものを、なんで要らん独自性を出したかねぇ。
962デフォルトの名無しさん (スップ Sdea-+oCX)
2018/08/15(水) 20:24:28.79ID:PVw+eqmQd 勉強段階なら一緒に覚えれば良いよ
自然といろんな流儀を覚える
自然といろんな流儀を覚える
963デフォルトの名無しさん (ブーイモ MM27-oNxq)
2018/08/15(水) 20:27:16.78ID:kg5weZ+NM >>960
> でもC++で書かれたクソコードというのはCのそれの比ではない
うむ、それは言えてる。
文法が簡易すぎてC++的意味不明な回りくどい糞コードを書けないからなのか、
それともこの簡易文法だけで戦っていける奴らは本質的に鍛えられるからなのか。
> でもC++で書かれたクソコードというのはCのそれの比ではない
うむ、それは言えてる。
文法が簡易すぎてC++的意味不明な回りくどい糞コードを書けないからなのか、
それともこの簡易文法だけで戦っていける奴らは本質的に鍛えられるからなのか。
964デフォルトの名無しさん (ワッチョイ 0b93-6ZXu)
2018/08/15(水) 20:28:43.25ID:2ovpzQjs0 わざわざ「C言語なら俺に聞け」スレッドで質問してるからには
C++ではないCに限定してるんじゃないか、と判断するのも合理的ではあるわね。
CとC++の両方を扱う初心者向けスレッドも別に存在するし。
もちろん >>926 の意図は投稿者自身のものだけど。
C++ではないCに限定してるんじゃないか、と判断するのも合理的ではあるわね。
CとC++の両方を扱う初心者向けスレッドも別に存在するし。
もちろん >>926 の意図は投稿者自身のものだけど。
965デフォルトの名無しさん (スップ Sdea-+oCX)
2018/08/15(水) 20:28:52.37ID:PVw+eqmQd C++の糞コードと言えばこれ
#define private public
#define private public
966デフォルトの名無しさん (ブーイモ MM27-oNxq)
2018/08/15(水) 20:28:53.66ID:kg5weZ+NM967デフォルトの名無しさん (スップ Sdea-+oCX)
2018/08/15(水) 20:30:15.51ID:PVw+eqmQd もう別の言語だよ
もちろん共通部分だけでも組めるけど
もちろん共通部分だけでも組めるけど
968デフォルトの名無しさん (スップ Sdea-+oCX)
2018/08/15(水) 20:38:11.04ID:PVw+eqmQd そういえば
コメントを // から /* */ にわざわざ変える人がいる
今まで何人か見た
そんな暇があったらさっさとコードを組め
コメントを // から /* */ にわざわざ変える人がいる
今まで何人か見た
そんな暇があったらさっさとコードを組め
969デフォルトの名無しさん (ブーイモ MM27-oNxq)
2018/08/15(水) 20:39:14.27ID:kg5weZ+NM >>965
それ、単純に通るか?
なおVC++/CLIではそこで手こずったことがある。
当初ほぼprivateで作っていたクラスを継承する必要が出てきて、
protectedとpublic等に変更したらコンパイラにさんざん文句言われて手こずった。
あれでC++の糞さを再認識した。本質的でないところで凄く引っかかる。
(VC++/CLIは意図的に文法を厳しくしているからというのもあるが)
それ、単純に通るか?
なおVC++/CLIではそこで手こずったことがある。
当初ほぼprivateで作っていたクラスを継承する必要が出てきて、
protectedとpublic等に変更したらコンパイラにさんざん文句言われて手こずった。
あれでC++の糞さを再認識した。本質的でないところで凄く引っかかる。
(VC++/CLIは意図的に文法を厳しくしているからというのもあるが)
970デフォルトの名無しさん (スップ Sdea-+oCX)
2018/08/15(水) 20:44:46.95ID:PVw+eqmQd 単純に通るか通らないかは環境や作りに依存する
わざわざ糞コードを披露するところが律儀だね
わざわざ糞コードを披露するところが律儀だね
971デフォルトの名無しさん (ブーイモ MM27-oNxq)
2018/08/15(水) 20:53:59.37ID:kg5weZ+NM あー、俺のコードが糞だったからってか?
しかし、当初継承無しで単独で使う予定だったクラスに対し、仕様変更で機能追加されたんだから致し方ないと思うが。
ただ、個人的にはpublic/private自体が不要、とは思っている。
JavaScriptはpublicしかなくて、当初「これでいいのか?」と思ったが、やってみたら全く問題ない。
外から使うときに中身なんて気にしたくないから、そもそもprivateなんて触りに行かない。
逆に、外から触りたい物をprivateにすることも間違っているし。
あれはいちいち書かなくとも自然と分かれ、それで全く問題ない。
(文法的にチェックするだけの意味しかない。まあそれを言えば型システム自体もそれに近いが)
しかし、当初継承無しで単独で使う予定だったクラスに対し、仕様変更で機能追加されたんだから致し方ないと思うが。
ただ、個人的にはpublic/private自体が不要、とは思っている。
JavaScriptはpublicしかなくて、当初「これでいいのか?」と思ったが、やってみたら全く問題ない。
外から使うときに中身なんて気にしたくないから、そもそもprivateなんて触りに行かない。
逆に、外から触りたい物をprivateにすることも間違っているし。
あれはいちいち書かなくとも自然と分かれ、それで全く問題ない。
(文法的にチェックするだけの意味しかない。まあそれを言えば型システム自体もそれに近いが)
972デフォルトの名無しさん (スップ Sdea-+oCX)
2018/08/15(水) 21:00:35.67ID:PVw+eqmQd じゃあclassを使わないで
全てstructで書けば良いよ
public protected privateは一切不要だから
全てstructで書けば良いよ
public protected privateは一切不要だから
973デフォルトの名無しさん (ワッチョイ 8a73-/icg)
2018/08/15(水) 21:06:02.60ID:YVF6Ac/t0 VSCodeのVimプラグイン使いづらいんだよな
SublimeTextのVimプラグインみたいに両方のエディタのいいとこ取りみたいなキーバインディングだったらいいのに
SublimeTextのVimプラグインみたいに両方のエディタのいいとこ取りみたいなキーバインディングだったらいいのに
974デフォルトの名無しさん (ワッチョイ 8a73-/icg)
2018/08/15(水) 21:08:10.50ID:YVF6Ac/t0 リロードしてなかったら既にエディタの話題が終わってて浦島みたいな気分だ
ハゲが
ハゲが
975さまよえる蟻人間 ◆T6xkBnTXz7B0 (スププ Sdea-cF9D)
2018/08/15(水) 21:18:55.80ID:XbGFS7Sjd はーげん脱
976デフォルトの名無しさん (ブーイモ MM27-oNxq)
2018/08/15(水) 22:46:38.48ID:UO318XzAM >>972
確かに俺はそれでいいが、
それだと「出来る限りprivateにすべき」教の信者から迫害を受けるのがウザイ。
これはC++よりもJavaの方が酷いように思うが。
この辺の文法的宗教戦争がCにまるでないのはメリットかも、とは思うよ。
private/publicに関してはデメリットの方が多い気がする。
なお、型もだ。動的型ならC++のテンプレートの大半は書かなくて済む。
無駄に手間を増やしている。動的型の方が書くのは快適だ。
あとはtypoを完全に検出れば、といったところか。
とはいえ、速度を追求するC/C++の世界には馴染まないが。
確かに俺はそれでいいが、
それだと「出来る限りprivateにすべき」教の信者から迫害を受けるのがウザイ。
これはC++よりもJavaの方が酷いように思うが。
この辺の文法的宗教戦争がCにまるでないのはメリットかも、とは思うよ。
private/publicに関してはデメリットの方が多い気がする。
なお、型もだ。動的型ならC++のテンプレートの大半は書かなくて済む。
無駄に手間を増やしている。動的型の方が書くのは快適だ。
あとはtypoを完全に検出れば、といったところか。
とはいえ、速度を追求するC/C++の世界には馴染まないが。
977デフォルトの名無しさん (ワッチョイ 1b9f-x/tb)
2018/08/15(水) 23:04:52.90ID:BN2igdfy0 Kotlinもよろしく
978デフォルトの名無しさん (アウアウウー Sa2f-02HX)
2018/08/15(水) 23:05:44.66ID:B3Li9vMqa まあ実装とインターフェースを区別する心掛けが大切なのであって、privateにして満足したらあかんとは思うよ。
979デフォルトの名無しさん (ブーイモ MM27-oNxq)
2018/08/15(水) 23:54:13.35ID:1IcV1KLeM >>978
というよりJavaは「粗結合教」「イテレータ教」かな?
見せなくて済むなら見せるなでインタフェースを無理に細くしているのと、
抽象化する必要がない場合もとりあえずイテレータにしてるだろ。
C++もナマポ撲滅の為に無駄にイテレータを導入しているから、この点は似ているが。
Cはここら辺の宗教戦争がない代わりに、どうしても抽象レベルが上がりにくく、
低レベルコードをひたすら書く羽目になるのが欠点か。
というよりJavaは「粗結合教」「イテレータ教」かな?
見せなくて済むなら見せるなでインタフェースを無理に細くしているのと、
抽象化する必要がない場合もとりあえずイテレータにしてるだろ。
C++もナマポ撲滅の為に無駄にイテレータを導入しているから、この点は似ているが。
Cはここら辺の宗教戦争がない代わりに、どうしても抽象レベルが上がりにくく、
低レベルコードをひたすら書く羽目になるのが欠点か。
980デフォルトの名無しさん (ワッチョイ db9e-JHtc)
2018/08/16(木) 01:31:46.14ID:IiF9TGTT0 どの言語でも、基本は疎結合。
スパゲッティ・泥団子などの密結合は、皆大嫌い!
こっちをいじれば、あっちが変わり、
あっちをいじれば、こっちが変わりw
スパゲッティ・泥団子などの密結合は、皆大嫌い!
こっちをいじれば、あっちが変わり、
あっちをいじれば、こっちが変わりw
981デフォルトの名無しさん (ワッチョイ 0f81-ipLS)
2018/08/16(木) 01:50:41.92ID:HU9VHWiC0 クラスはないがモジュール分割くらいは普通にするだろう
982デフォルトの名無しさん (スップ Sdbf-5dga)
2018/08/16(木) 03:27:52.80ID:zyXyJDDmd >>973
激しく同意
激しく同意
983デフォルトの名無しさん (ワッチョイ 0f01-ipLS)
2018/08/16(木) 07:14:50.63ID:yO9+GMaw0 イテレータがナマポ撲滅のため??
984デフォルトの名無しさん (アウアウカー Sa0f-8Gnp)
2018/08/16(木) 07:39:41.31ID:IWf/QMdza ここの人たちはリーナスさんのC++批判はどう思ってる?
985デフォルトの名無しさん (ワッチョイ 9fb3-GI1+)
2018/08/16(木) 07:39:43.44ID:t6OwQxX10 相手するなよ…
986デフォルトの名無しさん (ワッチョイ 0f01-ipLS)
2018/08/16(木) 09:33:11.42ID:yO9+GMaw0 俺もC++には気に入らんところがいくつかあって
リーナスの意見とは一致するところが多い
まず筆頭のクソが例外
次いでnewのコレジャナイ感
classとstructのしょーもなすぎる違い
リーナスの意見とは一致するところが多い
まず筆頭のクソが例外
次いでnewのコレジャナイ感
classとstructのしょーもなすぎる違い
レス数が950を超えています。1000を超えると書き込みができなくなります。
ニュース
- バリ島で男子生徒ら集団万引きか、防犯カメラ映像が拡散 京都の大谷中学・高校が「窃盗行為」謝罪★4 [七波羅探題★]
- 中国軍機レーダー照射、トランプ氏沈黙突く 試される日本外交 [蚤の市★]
- 【地震】青森県で震度6強 長周期地震動も 津波注意報すべて解除 ★7 [ぐれ★] [ぐれ★]
- 【速報】気象庁は津波注意報すべて解除 [蚤の市★]
- 【サッカー】58歳カズ「オファーが来ている」 J3福島と近日中にも交渉 早ければ年内にも決断 [征夷大将軍★]
- 「3.11の余震とは別か」「長時間避難できる場所を」 識者の見方 [蚤の市★]
- 前のネトウヨ「抗議だけで済ませるから日本は中国に舐められる!」→今「冷静に毅然と抗議する高市さん凄い!」 これマジで何なんだよ… [314039747]
- 【実況】博衣こよりのえちえち朝こよ🧪
- さかまた「過呼吸になった」かなた「耳聞こえない」ござる「声出ない」まつり「ご飯食べれない」
- 【画像】カリカリ女、脱いだらすごい😨 [632966346]
- 早大名誉教授「高市内閣の高支持率はデータ操作か、支持している日本人がアホなのか」👈核心を突いてしまう [868050967]
- こんぺこ!こんぺこ!こんぺこ!🐰🏡
