!extend:checked:vvvvv:1000:512
(新スレ立ての際上記コマンドを2行書き込んでください)
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言語なら俺に聞け 154
https://mevius.5ch.net/test/read.cgi/tech/1578997950/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
探検
C言語なら俺に聞け 155
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 76ba-P5bm)
2020/05/10(日) 23:20:27.99ID:Z3WQBr9X0496デフォルトの名無しさん (ワッチョイ 05ca-L1/G)
2020/07/10(金) 12:26:34.82ID:a7Xsl7M10497デフォルトの名無しさん (ワッチョイ 230e-ucCN)
2020/07/10(金) 12:28:13.10ID:d1dEL6aU0498デフォルトの名無しさん (スップ Sd03-Tflg)
2020/07/10(金) 12:28:33.38ID:6/cNdm0nd 入門書でscanfを扱うのが適切か否か
499デフォルトの名無しさん (アウウィフ FF09-jFjK)
2020/07/10(金) 12:31:35.35ID:2/CcitmbF getchar()からが良い
scanf()は反面教師
scanf()は反面教師
500デフォルトの名無しさん (スップ Sd03-Tflg)
2020/07/10(金) 12:32:24.53ID:6/cNdm0nd 数値入力にたどりつくまでえらい大変だな
501デフォルトの名無しさん (アウアウウー Sa09-Sz3q)
2020/07/10(金) 12:45:54.18ID:Y8Yy4fdKa まあ、scanf()の%sだけが問題なんだよな。
502デフォルトの名無しさん (ワッチョイ 230e-ucCN)
2020/07/10(金) 12:47:54.13ID:d1dEL6aU0503デフォルトの名無しさん (ワッチョイ 6352-PJiH)
2020/07/10(金) 12:55:06.27ID:qqWcHkmP0 >>498
入門書のプログラムは基本的に使うのは読者本人だから、お手軽な入力処理として使うのはありだと思う。ただ、使い方の注意点は簡単に補足しておいてほしいかな。知らずに、固まった!バグだ!とか騒いだりしないように。
それと、入門書の時点で堅牢な入力処理なんて必要ではないけど、将来的に実用的なプログラムを作るときには必要になってくるということを触れておいてほしい。
入門書のプログラムは基本的に使うのは読者本人だから、お手軽な入力処理として使うのはありだと思う。ただ、使い方の注意点は簡単に補足しておいてほしいかな。知らずに、固まった!バグだ!とか騒いだりしないように。
それと、入門書の時点で堅牢な入力処理なんて必要ではないけど、将来的に実用的なプログラムを作るときには必要になってくるということを触れておいてほしい。
504デフォルトの名無しさん (ワッチョイ 230e-ucCN)
2020/07/10(金) 13:37:44.03ID:d1dEL6aU0505デフォルトの名無しさん (JP 0H93-4zP6)
2020/07/10(金) 13:40:12.53ID:pQ428/DjH IT掲示板群 ttp://x0000.net/forum.aspx?id=15
学術の巨大掲示板群 - アルファ・ラボ ttp://x0000.net
数学 物理学 化学 生物学 天文学 地理地学
IT 電子 工学 言語学 国語 方言 など
simulationライブラリで純粋な関数式プログラミングをする
ttp://x0000.net/topic.aspx?id=3631-0
UIライブラリ (C#, 2D) を作ったよ
ttp://x0000.net/topic.aspx?id=3688-0
連続と離散を統一した!
ttp://x0000.net/topic.aspx?id=3709-0
4Dエンジン(画像有り)
ttp://x0000.net/topic.aspx?id=3677-0
matrixのライブラリ
ttp://x0000.net/topic.aspx?id=3711-0
ある強力なFor関数
ttp://x0000.net/topic.aspx?id=3630-0
SQLライブラリ
ttp://x0000.net/topic.aspx?id=3675-0
☆ VMを書いた(C#) * x86ではない!
ttp://up.x0000.net/files/TSimulang.zip
☆ malloc / free を実装してみた (C#)
ttp://up.x0000.net/files/TMallocTest.zip
学術の巨大掲示板群 - アルファ・ラボ ttp://x0000.net
数学 物理学 化学 生物学 天文学 地理地学
IT 電子 工学 言語学 国語 方言 など
simulationライブラリで純粋な関数式プログラミングをする
ttp://x0000.net/topic.aspx?id=3631-0
UIライブラリ (C#, 2D) を作ったよ
ttp://x0000.net/topic.aspx?id=3688-0
連続と離散を統一した!
ttp://x0000.net/topic.aspx?id=3709-0
4Dエンジン(画像有り)
ttp://x0000.net/topic.aspx?id=3677-0
matrixのライブラリ
ttp://x0000.net/topic.aspx?id=3711-0
ある強力なFor関数
ttp://x0000.net/topic.aspx?id=3630-0
SQLライブラリ
ttp://x0000.net/topic.aspx?id=3675-0
☆ VMを書いた(C#) * x86ではない!
ttp://up.x0000.net/files/TSimulang.zip
☆ malloc / free を実装してみた (C#)
ttp://up.x0000.net/files/TMallocTest.zip
506デフォルトの名無しさん (ワッチョイ 0391-LoFw)
2020/07/10(金) 13:54:36.12ID:cHuUURyg0 俺に聞け! ってだけで
回答するとは言っていない
回答するとは言っていない
507デフォルトの名無しさん (アウアウエー Sa13-c9t6)
2020/07/10(金) 14:21:32.04ID:/uHfdbTha 確かに>>1の概要欄にも答えるとは一文字も書かれて無いw
508デフォルトの名無しさん (ワッチョイ 230e-ucCN)
2020/07/10(金) 18:44:30.98ID:d1dEL6aU0 そこへ逃げるかwww
509デフォルトの名無しさん (オイコラミネオ MM51-L1/G)
2020/07/10(金) 18:55:09.14ID:rYXxVyEBM510デフォルトの名無しさん (ワッチョイ 0db3-Tflg)
2020/07/10(金) 19:00:44.43ID:7RoGj1wV0 言い出しっぺの法則
512デフォルトの名無しさん (オイコラミネオ MM51-mXGD)
2020/07/10(金) 22:08:00.13ID:edpv1F1UM >>511
QZ先生がどのくらいのリスクを前提に言っているのかにもよりますけど、
上限なき malloc については、リスク回避の点で、私はやっぱり問題にしたいですねえ。
おっしゃる通り、malloc が失敗を返した場合は概ね問題ないと思うのですが。
逆に malloc が成功を返した場合はどうです?
共有リソースとしてのメモリを奪いきってしまった結果としての成功であるなら、
OSによっては、他のプロセスのメモリ確保失敗に伴う致命的エラーを誘発するなどして、
広範囲な問題を引き起こすやもしれません。
先人の知恵として、システムコールやAPIの仕様として、インターフェイスにせよ、内部的にせよ、上限を設けてあると思います。
getline の内部は見てないのですが、極端に大きなサイズになりそうなら、malloc を呼び出す前に、
上限値を超えました的なエラーを返すような、慎重なコーディングになっていることを期待したいところです
QZ先生がどのくらいのリスクを前提に言っているのかにもよりますけど、
上限なき malloc については、リスク回避の点で、私はやっぱり問題にしたいですねえ。
おっしゃる通り、malloc が失敗を返した場合は概ね問題ないと思うのですが。
逆に malloc が成功を返した場合はどうです?
共有リソースとしてのメモリを奪いきってしまった結果としての成功であるなら、
OSによっては、他のプロセスのメモリ確保失敗に伴う致命的エラーを誘発するなどして、
広範囲な問題を引き起こすやもしれません。
先人の知恵として、システムコールやAPIの仕様として、インターフェイスにせよ、内部的にせよ、上限を設けてあると思います。
getline の内部は見てないのですが、極端に大きなサイズになりそうなら、malloc を呼び出す前に、
上限値を超えました的なエラーを返すような、慎重なコーディングになっていることを期待したいところです
513はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 053e-ucCN)
2020/07/10(金) 23:07:47.23ID:HDImBgbn0 >>511
実行環境に固有の特殊事情ではあるけど
Linux だとメモリが足りなくても malloc が成功する場合がある。 (オーバーコミット)
malloc の返り値を気にしても無駄。
想定以上の巨大な行の読み込み (メモリ割り当ての失敗) に対して
何か対処する機会なくプロセスごと殺される (OOM Killer) かもしれないので、
想定する上限があるなら設定できて欲しいよ。
実行環境に固有の特殊事情ではあるけど
Linux だとメモリが足りなくても malloc が成功する場合がある。 (オーバーコミット)
malloc の返り値を気にしても無駄。
想定以上の巨大な行の読み込み (メモリ割り当ての失敗) に対して
何か対処する機会なくプロセスごと殺される (OOM Killer) かもしれないので、
想定する上限があるなら設定できて欲しいよ。
514デフォルトの名無しさん (ワッチョイ 2301-LRpg)
2020/07/11(土) 00:41:24.74ID:UdJEarb20 ドライバレベルの仕様に詳しい人って、そこそこ不幸だよね😅
515デフォルトの名無しさん (ワッチョイ cb63-56/R)
2020/07/11(土) 00:58:32.96ID:YkgvwUMV0 誰かが特攻隊に志願しないと行けないからな
516デフォルトの名無しさん (ワッチョイ 45bd-L1/G)
2020/07/11(土) 04:47:05.81ID:dhYEJgZ00 >>513
メモリを確保するだけじゃなく中身を詰めて返すから、内部でメモリ量を超える malloc に成功しながら中身を詰めてる過程でメモリ不足で落ちそうだね。
上限設けてないと回避できない深刻な問題になりそう。
メモリを確保するだけじゃなく中身を詰めて返すから、内部でメモリ量を超える malloc に成功しながら中身を詰めてる過程でメモリ不足で落ちそうだね。
上限設けてないと回避できない深刻な問題になりそう。
517デフォルトの名無しさん (ワッチョイ 8510-YwU+)
2020/07/11(土) 20:25:40.62ID:3ggQxlyq0 mallocはウィザードリィみたいだよな
518デフォルトの名無しさん (ワッチョイ 6352-PJiH)
2020/07/12(日) 11:24:42.19ID:VdrMQ+ag0 >>517
どの辺が?
どの辺が?
519デフォルトの名無しさん (ワッチョイ 05da-mXGD)
2020/07/12(日) 12:22:43.74ID:pMv4WACh0 >>518
岩の中にテレポートしそうなあたりじゃないかな
岩の中にテレポートしそうなあたりじゃないかな
520デフォルトの名無しさん (ワッチョイ 75b0-ucCN)
2020/07/12(日) 12:31:19.68ID:lQJaWZP00 そういえば、初期のosxはオーバーコミットと動的スワップの合わせ技で、ディスクの空き容量が
少ないとよく固まってたな。しかもfinderではまだ空きがあるように見えても実際には最小空き容量に
引っかかるという油断のならない仕様だった。
少ないとよく固まってたな。しかもfinderではまだ空きがあるように見えても実際には最小空き容量に
引っかかるという油断のならない仕様だった。
521デフォルトの名無しさん (ワッチョイ fdbb-mXGD)
2020/07/12(日) 14:47:47.78ID:RLT83ouV0 マクロを使った面白いコードを教えてください
522デフォルトの名無しさん (ワッチョイ ab7c-jFjK)
2020/07/12(日) 14:50:59.64ID:uGVzSaa20 先に面白いの判定基準を出せ
523デフォルトの名無しさん (ワッチョイ fdbb-mXGD)
2020/07/12(日) 14:55:11.44ID:RLT83ouV0 >>522
トリッキーなやつで普段お目にかかれないやつです
トリッキーなやつで普段お目にかかれないやつです
524デフォルトの名無しさん (ワッチョイ 230e-ucCN)
2020/07/12(日) 16:14:17.46ID:TX1mpKr60525デフォルトの名無しさん (ワッチョイ fdbb-mXGD)
2020/07/12(日) 16:26:56.92ID:RLT83ouV0526デフォルトの名無しさん (ワッチョイ 230e-ucCN)
2020/07/12(日) 16:34:02.06ID:TX1mpKr60 自分で解読しなきゃ
他人に聞いたら意味ないよ
他人に聞いたら意味ないよ
527デフォルトの名無しさん (ワッチョイ 7546-Dz1Y)
2020/07/12(日) 18:07:11.46ID:eOx5QXnj0528デフォルトの名無しさん (ブーイモ MM99-Kmjx)
2020/07/12(日) 19:01:50.30ID:XR2tpNWXM 落ち着け、IOCCC知らんのか
529デフォルトの名無しさん (ワッチョイ ab7c-jFjK)
2020/07/12(日) 19:40:25.98ID:uGVzSaa20 昔観た砂嵐のもこんなんだったな
マクロ使ってたかどうかは覚えてないけど
いずれにしても中身に意味があるとは思えない
マクロ使ってたかどうかは覚えてないけど
いずれにしても中身に意味があるとは思えない
530デフォルトの名無しさん (ワッチョイ 230e-ucCN)
2020/07/12(日) 19:48:29.22ID:TX1mpKr60 地上波アナログ?
531デフォルトの名無しさん (ワッチョイ ab7c-jFjK)
2020/07/13(月) 09:07:37.15ID:+mCuetAH0 落ち着け、IOCCC知らんのか
532デフォルトの名無しさん (ワッチョイ 230e-ucCN)
2020/07/13(月) 11:02:55.12ID:wLJMlZf60 わざと解りにくく書いたコードだぞ
「ちゃんと動くプログラム」という制約のもとで
解りにくさを競っているんだよ
「ちゃんと動くプログラム」という制約のもとで
解りにくさを競っているんだよ
533デフォルトの名無しさん (アウアウエー Sa13-c9t6)
2020/07/13(月) 11:11:26.83ID:Q6XHo6fua >>525
岩の中にテレポートしそうなあたりじゃないかな
岩の中にテレポートしそうなあたりじゃないかな
534デフォルトの名無しさん (スッップ Sd43-Tflg)
2020/07/13(月) 12:02:49.97ID:JZTlaHWid >>527
素人かよ
素人かよ
535デフォルトの名無しさん (エムゾネ FF43-jFjK)
2020/07/13(月) 12:06:46.27ID:WBkWHxcTF >>527 本人じゃないけど
成型ツールで戻せば良いとか言うレベルじゃなくて
マジックナンバー使いまくりの手動最適化コードとか
読み難くする以外のメリットなんにも無い時間の無駄
難読化ツールとかの話も関係無い
成型ツールで戻せば良いとか言うレベルじゃなくて
マジックナンバー使いまくりの手動最適化コードとか
読み難くする以外のメリットなんにも無い時間の無駄
難読化ツールとかの話も関係無い
536デフォルトの名無しさん (スッップ Sd43-Tflg)
2020/07/13(月) 12:12:02.64ID:JZTlaHWid 人間が読む事を想定してないコード
なんていう発想は無いのか
なんていう発想は無いのか
537デフォルトの名無しさん (ワッチョイ 230e-ucCN)
2020/07/13(月) 12:18:07.92ID:wLJMlZf60 機械語がそうだね
538デフォルトの名無しさん (ワッチョイ cbd2-ucCN)
2020/07/13(月) 12:20:50.91ID:HqaSJoay0 難読ソースコンテストってのがあるって25年前に聞いた。
539デフォルトの名無しさん (エムゾネ FF43-jFjK)
2020/07/13(月) 12:22:42.17ID:WBkWHxcTF どんなネタでも餌にして生きていける人って別の意味で浦山
540デフォルトの名無しさん (ワッチョイ 857b-4PPV)
2020/07/13(月) 12:39:50.37ID:17o/9bhC0 って言うか >>1 でリンク張られてるサイト
C FAQ 日本語訳
http://www.kouno.jp/home/c_faq/
の 20.36 が 国際難解Cコードコンテスト(IOCCC) の紹介ですよ。
まぁ知らなくても実用では少しも困らないネタ話だけどね。
C FAQ 日本語訳
http://www.kouno.jp/home/c_faq/
の 20.36 が 国際難解Cコードコンテスト(IOCCC) の紹介ですよ。
まぁ知らなくても実用では少しも困らないネタ話だけどね。
541デフォルトの名無しさん (JP 0H93-4zP6)
2020/07/13(月) 13:06:29.12ID:UIoR1/02H IT掲示板群 ttp://x0000.net/forum.aspx?id=15
学術の巨大掲示板群 - アルファ・ラボ ttp://x0000.net
数学 物理学 化学 生物学 天文学 地理地学
IT 電子 工学 言語学 国語 方言 など
simulationライブラリで純粋な関数式プログラミングをする
ttp://x0000.net/topic.aspx?id=3631-0
UIライブラリ (C#, 2D) を作ったよ
ttp://x0000.net/topic.aspx?id=3688-0
連続と離散を統一した!
ttp://x0000.net/topic.aspx?id=3709-0
4Dエンジン(画像有り)
ttp://x0000.net/topic.aspx?id=3677-0
matrixのライブラリ
ttp://x0000.net/topic.aspx?id=3711-0
ある強力なFor関数
ttp://x0000.net/topic.aspx?id=3630-0
SQLライブラリ
ttp://x0000.net/topic.aspx?id=3675-0
☆ VMを書いた(C#) * x86ではない!
ttp://up.x0000.net/files/TSimulang.zip
☆ malloc / free を実装してみた (C#)
ttp://up.x0000.net/files/TMallocTest.zip
学術の巨大掲示板群 - アルファ・ラボ ttp://x0000.net
数学 物理学 化学 生物学 天文学 地理地学
IT 電子 工学 言語学 国語 方言 など
simulationライブラリで純粋な関数式プログラミングをする
ttp://x0000.net/topic.aspx?id=3631-0
UIライブラリ (C#, 2D) を作ったよ
ttp://x0000.net/topic.aspx?id=3688-0
連続と離散を統一した!
ttp://x0000.net/topic.aspx?id=3709-0
4Dエンジン(画像有り)
ttp://x0000.net/topic.aspx?id=3677-0
matrixのライブラリ
ttp://x0000.net/topic.aspx?id=3711-0
ある強力なFor関数
ttp://x0000.net/topic.aspx?id=3630-0
SQLライブラリ
ttp://x0000.net/topic.aspx?id=3675-0
☆ VMを書いた(C#) * x86ではない!
ttp://up.x0000.net/files/TSimulang.zip
☆ malloc / free を実装してみた (C#)
ttp://up.x0000.net/files/TMallocTest.zip
542デフォルトの名無しさん (ワッチョイ 23ad-skOr)
2020/07/13(月) 23:11:58.86ID:9EBd4T6S0 >>540
読み方は?
読み方は?
543デフォルトの名無しさん (スップ Sdda-BbQx)
2020/07/15(水) 14:29:54.86ID:U8iX10oDd あいおーしーしーしー
544デフォルトの名無しさん (ワッチョイ 5510-Zd+S)
2020/07/15(水) 15:00:37.70ID:67nW9VWC0 催し物やな
545デフォルトの名無しさん (ワッチョイ 5a0e-YsWi)
2020/07/15(水) 15:52:55.55ID:N3ltiDOr0 市民館みたいなとこでやってるわけじゃないがな
546デフォルトの名無しさん (ワッチョイ daad-0yBj)
2020/07/15(水) 20:44:36.96ID:pJ20MS8a0 CCCの部分はトリプルCではなく?
547デフォルトの名無しさん (ワッチョイ 5a0e-YsWi)
2020/07/15(水) 20:50:18.41ID:N3ltiDOr0 うん、トリプルって読み方する人には会ったことがないな
548デフォルトの名無しさん (ワッチョイ 5a0e-YsWi)
2020/07/15(水) 20:50:51.37ID:N3ltiDOr0 あいとりぷるいーは普通だけど
549デフォルトの名無しさん (ブーイモ MMde-cWPK)
2020/07/15(水) 21:08:27.18ID:a3wypoikM このクイズ番組の回答者が読み方喋ってる
https://youtu.be/f7WPP-5GG58
https://youtu.be/f7WPP-5GG58
550デフォルトの名無しさん (ワッチョイ 41b3-6M5R)
2020/07/15(水) 21:53:44.85ID:JGqdiMCl0551デフォルトの名無しさん (アウアウエー Sa02-l+/r)
2020/07/16(木) 00:44:59.58ID:ZFOOaYp/a >>546
カルチュアコンビニエンスクラブ
カルチュアコンビニエンスクラブ
552デフォルトの名無しさん (ワッチョイ 9de6-YsWi)
2020/07/16(木) 04:02:23.42ID:CYft8xDJ0 >>550
イェェェ!!
イェェェ!!
553デフォルトの名無しさん (ワッチョイ 6905-YsWi)
2020/07/16(木) 09:30:43.69ID:UNVzIGjY0 >>548
イエエエ!
イエエエ!
554デフォルトの名無しさん (ワッチョイ ee8c-+zMD)
2020/07/16(木) 09:34:53.50ID:+sr/NO6P0 >>548
アイドルぷりぷり
アイドルぷりぷり
555デフォルトの名無しさん (ワッチョイ daad-YsWi)
2020/07/16(木) 22:21:03.87ID:HOuHYCld0 東京が goto キャンペーンから外されて本当に良かった。
>>555
goto hell キャンペーン?
goto hell キャンペーン?
557デフォルトの名無しさん (ワッチョイ daad-YsWi)
2020/07/16(木) 23:23:34.12ID:HOuHYCld0 東京以外は goto を使ったCプログラムで溢れかえるんだろうなあ・・・
558デフォルトの名無しさん (ワッチョイ 6d63-zSg9)
2020/07/16(木) 23:59:23.84ID:miG5Ngn20 すべてのreturnは東京に帰る
559デフォルトの名無しさん (アウアウエー Sa02-rGUB)
2020/07/17(金) 00:08:23.19ID:UXHw+Bbza exit((int) "TOKYO");
560デフォルトの名無しさん (ワッチョイ 5a0e-YsWi)
2020/07/17(金) 06:35:08.70ID:FmIaoXoT0 令和のgoto有害説
561デフォルトの名無しさん (ワッチョイ 752d-sTnA)
2020/07/17(金) 08:41:43.61ID:UlzyaY8x0 gotoとラベル
562デフォルトの名無しさん (スップ Sdda-BbQx)
2020/07/17(金) 09:09:08.77ID:+XePIYq+d うまいな
563デフォルトの名無しさん (アウアウウー Sa39-lbAa)
2020/07/17(金) 20:54:53.28ID:TuO7NpMNa くっ。やられた。
私の負けを認めよう。
私の負けを認めよう。
564デフォルトの名無しさん (ワッチョイ c628-UH/d)
2020/07/18(土) 12:46:51.82ID:PyiwbgQS0 奥村先生が書いてらっしゃる
「いまさらC言語」
https://scrapbox.io/imasaraC/
って、「初学者がC言語を学ぶ」という目的にはそぐいますか?
偉そうな言い方なんですけど、C言語の基礎を一通りなぞる感じには見えませんでした。
ですが、もしもC言語の基礎をこの記事で勉強できるなら、
奥村先生直筆の日本語文書ですし、ぜひ参考にさせていただきたいのです。
「いまさらC言語」
https://scrapbox.io/imasaraC/
って、「初学者がC言語を学ぶ」という目的にはそぐいますか?
偉そうな言い方なんですけど、C言語の基礎を一通りなぞる感じには見えませんでした。
ですが、もしもC言語の基礎をこの記事で勉強できるなら、
奥村先生直筆の日本語文書ですし、ぜひ参考にさせていただきたいのです。
565デフォルトの名無しさん (アウウィフ FF39-L8bc)
2020/07/18(土) 12:56:27.17ID:uRU3MGLxF 散文っぽくて体系的じゃない感じは受けた
「いまさら」であって「初めての」ではないので文字通り受け取って
既に知ってる人が改めて見直す機会には良いんじゃね
scanf
https://scrapbox.io/imasaraC/scanf()
fgets
https://scrapbox.io/imasaraC/fgets()
「いまさら」であって「初めての」ではないので文字通り受け取って
既に知ってる人が改めて見直す機会には良いんじゃね
scanf
https://scrapbox.io/imasaraC/scanf()
fgets
https://scrapbox.io/imasaraC/fgets()
566デフォルトの名無しさん (ワッチョイ c628-UH/d)
2020/07/18(土) 15:06:19.54ID:PyiwbgQS0567デフォルトの名無しさん (ワッチョイ ee8c-G2ah)
2020/07/21(火) 00:25:21.83ID:Wl7zo7XN0 すっごいポンコツPCでmacでCSV作って作ったの読み込んで計算して表示してって10回ぐらい繰り返したら同じデータ表示されるの?
568デフォルトの名無しさん (ブーイモ MMa1-cWPK)
2020/07/21(火) 00:30:45.40ID:Y7gEkUNqM ポンコツだとたまに計算間違うから無理じゃないかなあ
569蟻人間 ◆T6xkBnTXz7B0 (スフッ Sdfa-ch6b)
2020/07/21(火) 00:32:52.06ID:iLwMnecKd >>567
本当にポンコツであれば、主メモリーかHDDが壊れている可能性がある。
本当にポンコツであれば、主メモリーかHDDが壊れている可能性がある。
570デフォルトの名無しさん (ワッチョイ ee8c-G2ah)
2020/07/21(火) 00:34:45.78ID:Wl7zo7XN0 >>567
なんかこんな環境でやったらCSVのデータが更新されなくて10回全部同じ計算になってるって事が起きたから
やった人はsleepで遅らせたら変化したって言ってたからそんなことが起きる事があるのかって不思議に思ったわ
なんかこんな環境でやったらCSVのデータが更新されなくて10回全部同じ計算になってるって事が起きたから
やった人はsleepで遅らせたら変化したって言ってたからそんなことが起きる事があるのかって不思議に思ったわ
571はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 693e-hHzd)
2020/07/21(火) 01:27:00.90ID:VthsC7AN0 メモリは思ったより信用できない (ちょいちょい化ける) という話を
何かのウェブブラウザ関連の文章で読んだことがあるような
気がするんだけど思い出せない。
何かのウェブブラウザ関連の文章で読んだことがあるような
気がするんだけど思い出せない。
572デフォルトの名無しさん (ワッチョイ 6d63-zSg9)
2020/07/21(火) 01:41:36.17ID:bmKYQrdR0 おじいちゃん
573デフォルトの名無しさん (ワッチョイ 7663-GoP2)
2020/07/21(火) 02:56:31.73ID:i26SyfyA0 簡単に化けるから誤り検出符号なるものが存在している
HDDはもちろんメモリだって物理的に劣化する
HDDはもちろんメモリだって物理的に劣化する
574デフォルトの名無しさん (ラクッペペ MM0e-M824)
2020/07/21(火) 03:18:48.82ID:e/mkPZH8M575デフォルトの名無しさん (ワントンキン MMea-rqus)
2020/07/21(火) 03:19:15.76ID:z3AOQZxtM ディスクキャッシュでなかったかな。
毎度syncするようなkernelパラメータか何かを与えないと旧データを読み出すような事象が昔あったような。
毎度syncするようなkernelパラメータか何かを与えないと旧データを読み出すような事象が昔あったような。
576デフォルトの名無しさん (ワッチョイ 5a0e-YsWi)
2020/07/21(火) 08:19:11.51ID:6CpMqD4P0577デフォルトの名無しさん (オッペケ Sr75-J55X)
2020/07/21(火) 17:26:30.39ID:TSoseUQ7r C言語を3ヶ月前から勉強し始めたものです。この間、C言語3級を受験しました。
C言語かなり難しいです。
苦労しながらC言語学んだ方いますか?
C言語かなり難しいです。
苦労しながらC言語学んだ方いますか?
578デフォルトの名無しさん (ワッチョイ 69bb-zSg9)
2020/07/21(火) 17:28:45.77ID:aESJfhai0 はい
なんでしょう
なんでしょう
579デフォルトの名無しさん (オッペケ Sr75-J55X)
2020/07/21(火) 17:30:55.73ID:TSoseUQ7r 安心しました
がんばります
がんばります
580デフォルトの名無しさん (ワッチョイ 5a0e-YsWi)
2020/07/21(火) 17:30:56.37ID:6CpMqD4P0 苦労せずに学んだやつなんているのか?
元々アセンブラ屋でアドレスやポインタが当たり前だった俺でさえ
それなりに脂汗かきながら憶えたぞ
元々アセンブラ屋でアドレスやポインタが当たり前だった俺でさえ
それなりに脂汗かきながら憶えたぞ
581デフォルトの名無しさん (ワッチョイ 95ca-ebQW)
2020/07/21(火) 18:13:57.71ID:zwiBtbEn0 独学で始めたからリンカの使い方とかよく分からず、C のソースを全部 include してたな。
582デフォルトの名無しさん (ワッチョイ 7646-NUPd)
2020/07/21(火) 19:46:32.95ID:tvr2GUf40 >>581
nanisore. 面白い。詳しく。
nanisore. 面白い。詳しく。
583デフォルトの名無しさん (ワッチョイ 6d63-zSg9)
2020/07/21(火) 20:00:00.53ID:bmKYQrdR0 多分分割コンパイルのやり方を知らなかった頃の話だろう
584デフォルトの名無しさん (ワッチョイ 95ca-ebQW)
2020/07/21(火) 20:10:11.93ID:zwiBtbEn0585デフォルトの名無しさん (アウアウエー Sa02-rGUB)
2020/07/21(火) 22:42:16.68ID:nbzaQebba 依存ファイル集める方がよほど知識が要りそう
586デフォルトの名無しさん (ワッチョイ 1394-keh3)
2020/07/22(水) 15:51:53.55ID:xRlBM5RB0 このコード最適化の余地ある?-O3でやっても1900msとかかかるんだけど
#include <time.h>
#include <stdio.h>
#include <stdlib.h>
int f(int size, int *data1, int *data2) {
int r = 0;
for (int j = 0; j < 100; j++) {
for (int i = 0; i < size; i++) {
r ^= data1[i] & data2[i];
}
}
return r;
}
#include <time.h>
#include <stdio.h>
#include <stdlib.h>
int f(int size, int *data1, int *data2) {
int r = 0;
for (int j = 0; j < 100; j++) {
for (int i = 0; i < size; i++) {
r ^= data1[i] & data2[i];
}
}
return r;
}
587デフォルトの名無しさん (ワッチョイ 1394-keh3)
2020/07/22(水) 15:52:29.23ID:xRlBM5RB0 int main(int argc, char *argv[]) {
int size = 1000 * 1000 * 100;
int *data1 = (int*) malloc(size * sizeof(int));
int *data2 = (int*) malloc(size * sizeof(int));
//setup test data
srand((int) time(NULL));
for (int i = 0; i < size; i++) {
data1[i] = rand();
data2[i] = rand();
}
int sec, millisec;
struct timeb timebuffer;
//start
ftime(&timebuffer);
sec = timebuffer.time;
millisec = timebuffer.millitm;
int size = 1000 * 1000 * 100;
int *data1 = (int*) malloc(size * sizeof(int));
int *data2 = (int*) malloc(size * sizeof(int));
//setup test data
srand((int) time(NULL));
for (int i = 0; i < size; i++) {
data1[i] = rand();
data2[i] = rand();
}
int sec, millisec;
struct timeb timebuffer;
//start
ftime(&timebuffer);
sec = timebuffer.time;
millisec = timebuffer.millitm;
588デフォルトの名無しさん (ワッチョイ 1394-keh3)
2020/07/22(水) 15:52:35.64ID:xRlBM5RB0 // benchmark
int r = f(size, data1, data2);
// end
ftime(&timebuffer);
sec = timebuffer.time - sec;
millisec = timebuffer.millitm - millisec;
millisec += sec * 1000;
printf("%d ms \n %d", millisec, r);
free(data1);
free(data2);
}
int r = f(size, data1, data2);
// end
ftime(&timebuffer);
sec = timebuffer.time - sec;
millisec = timebuffer.millitm - millisec;
millisec += sec * 1000;
printf("%d ms \n %d", millisec, r);
free(data1);
free(data2);
}
589デフォルトの名無しさん (JP 0H55-ZQKC)
2020/07/22(水) 16:01:48.88ID:lGyqioywH f()で0返せばいいんじゃね?
590デフォルトの名無しさん (ワッチョイ 1394-keh3)
2020/07/22(水) 16:06:36.57ID:xRlBM5RB0 たしかにrが0になるが
たぶんsrand, randで値の分布が一様じゃないせいか?
Javaとの性能比較してたんだけど乱数生成法が合わせれないな
たぶんsrand, randで値の分布が一様じゃないせいか?
Javaとの性能比較してたんだけど乱数生成法が合わせれないな
591デフォルトの名無しさん (ワッチョイ 1394-keh3)
2020/07/22(水) 16:07:57.00ID:xRlBM5RB0 あ違うなsizeがでかすぎると0になっちゃうのか
592デフォルトの名無しさん (ワッチョイ 69e6-5TCi)
2020/07/22(水) 16:11:34.79ID:1buRSft90 Java(VM)とCという言語の比較をしたいのかこのソースを最適化したいのかrandの仕様を統一したいのか意味不明だわ
593デフォルトの名無しさん (ワッチョイ 1394-keh3)
2020/07/22(水) 16:21:46.25ID:xRlBM5RB0 JavaとCの性能比較で「Javaは高速だCに負けてない」とか
「JITやGCが動作する時に遅くなるだけだ」とか良く言われてる。
でもこういう単純な配列処理でCの方が3倍くらい速いよな、と思って。
この処理は計測中にヒープ割当が無いからGC関係ない(Javaでオブジェクトを作成するとGCのためのオーバーヘッドがあるらしい)。
JavaでJIT効かせてから計測してもCが4倍弱速かった。
最初1900msもかかるといってたのは勘違い。Cの方が4倍弱速いから予想通りの性能だった。
Javaの性能に関する言説を見渡しても、なぜこういう処理でJavaが遅いのか説明が無い。
大量のデータを処理しつつ特定の値に収束しない良いベンチマークコードがあればいいんだが。
足す引きを交互に繰り返すか。
「JITやGCが動作する時に遅くなるだけだ」とか良く言われてる。
でもこういう単純な配列処理でCの方が3倍くらい速いよな、と思って。
この処理は計測中にヒープ割当が無いからGC関係ない(Javaでオブジェクトを作成するとGCのためのオーバーヘッドがあるらしい)。
JavaでJIT効かせてから計測してもCが4倍弱速かった。
最初1900msもかかるといってたのは勘違い。Cの方が4倍弱速いから予想通りの性能だった。
Javaの性能に関する言説を見渡しても、なぜこういう処理でJavaが遅いのか説明が無い。
大量のデータを処理しつつ特定の値に収束しない良いベンチマークコードがあればいいんだが。
足す引きを交互に繰り返すか。
594デフォルトの名無しさん (ワッチョイ 1301-KHfa)
2020/07/22(水) 16:24:26.21ID:t6q0HDDX0 >>586
data1[i] & data2[i] の計算を100回もやることはないから
int f(int size, int *data1, int *data2) {
int *data3 = (int*) malloc(size * sizeof(int));
for (int i = 0; i < size; i++) {
data3[i] = data1[i] & data2[i];
}
int r = 0;
for (int j = 0; j < 100; j++) {
for (int i = 0; i < size; i++) {
r ^= data3[i];
}
}
free(data3);
return r;
}
ってやると多少速くなるかも
あとは分割してスレッドで並行して実行するとかかな
data1[i] & data2[i] の計算を100回もやることはないから
int f(int size, int *data1, int *data2) {
int *data3 = (int*) malloc(size * sizeof(int));
for (int i = 0; i < size; i++) {
data3[i] = data1[i] & data2[i];
}
int r = 0;
for (int j = 0; j < 100; j++) {
for (int i = 0; i < size; i++) {
r ^= data3[i];
}
}
free(data3);
return r;
}
ってやると多少速くなるかも
あとは分割してスレッドで並行して実行するとかかな
595デフォルトの名無しさん (ワッチョイ 1394-keh3)
2020/07/22(水) 16:26:57.20ID:xRlBM5RB0 これで収束しないし毎回ランダムな結果になる。
long f(int size, int *data1, int *data2) {
long r = 0;
for (int j = 0; j < 100; j++) {
for (int i = 0; i < size; i++) {
r += data1[i] - data2[i];//ここ変えた
}
}
return r;
}
long f(int size, int *data1, int *data2) {
long r = 0;
for (int j = 0; j < 100; j++) {
for (int i = 0; i < size; i++) {
r += data1[i] - data2[i];//ここ変えた
}
}
return r;
}
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 「もうキモくてキモくて…」29歳女性が語る“おぢアタック”の実態。「俺ならイケるかも」年下女性を狙う勘違い中年男性に共通点が★2 [Hitzeschleier★]
- 日本語が話せない「外国籍」の子が急増中、授業がストップ、教室から脱走も…先生にも大きな負担「日本語支援」追いつかず [七波羅探題★]
- 「暖房が使えない」「食費が高くて子どもの栄養が…」 物価高に苦しむ子育て世帯、政府に期待する支援は [蚤の市★]
- パワフル女性世界3位に高市首相 米誌フォーブス選出 [蚤の市★]
- 【米国】「トランプ・ゴールドカード」の受付開始 1億5600万円でアメリカの永住権を獲得 ウェブサイトで申し込み [ぐれ★]
- 【東京】テレ朝本社から社外スタッフの男性が転落し死亡 テレビ朝日がコメント 通行人の男性巻き込まれ軽傷 六本木 [ぐれ★]
