(新スレ立ての際上記コマンドを2行書き込んでください)
C言語の話題のみ取り扱います C++の話題はC++スレへ
質問には最低限の情報(ソース/コンパイラ/OS)を付ける
数行で収まらないソースは以下を適当に使ってURLを晒す
https://paiza.io/
https://ideone.com/
http://codepad.org/
C17
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/n4713.pdf
C11
http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1570.pdf
C23 最新ドラフト
https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3047.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言語なら俺に聞け 163
https://mevius.5ch.net/test/read.cgi/tech/1721137434/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
C言語なら俺に聞け 164
1デフォルトの名無しさん (ワッチョイ 3301-UQbq)
2025/07/23(水) 15:30:01.81ID:eCR5cXRr0665デフォルトの名無しさん (ワッチョイ 8934-UT5n)
2026/07/16(木) 12:22:29.33ID:tqJQMSog0 > 仕様準拠は主に(長期的な)生産性向上の為(=ソースコードの品質を上げる為)として、
> 生産性を上げる為には仕様内の差異を潰す(仕様を絞る)事をしないといけない。
> 逆に言うと、仕様準拠だが実装がバラけるような「ユルい」仕様では意味がない。
お前やっぱC書いたことないだろって感じのことばっかり言うよな
流石に明らかに変なところに突っ込まないのは逆に怪しいから突っ込むけども、
> 仕様準拠だが実装がバラけるような「ユルい」仕様では意味がない
申し訳ないが意味不明
仕様準拠なら実装が違っても問題ないのは前提なんだわ
それは「高級言語」というものの定義の話としてそうで、逆に、そうじゃなかったらアセンブリ直接書けって話にしかならんのね
ハードウェアを抽象化した以上、仕様で提供される機能の範囲で書くというのは君が散々Cより改良されてると言ってる諸言語でも同じ
> 生産性を上げる為には仕様内の差異を潰す(仕様を絞る)事をしないといけない。
> 逆に言うと、仕様準拠だが実装がバラけるような「ユルい」仕様では意味がない。
お前やっぱC書いたことないだろって感じのことばっかり言うよな
流石に明らかに変なところに突っ込まないのは逆に怪しいから突っ込むけども、
> 仕様準拠だが実装がバラけるような「ユルい」仕様では意味がない
申し訳ないが意味不明
仕様準拠なら実装が違っても問題ないのは前提なんだわ
それは「高級言語」というものの定義の話としてそうで、逆に、そうじゃなかったらアセンブリ直接書けって話にしかならんのね
ハードウェアを抽象化した以上、仕様で提供される機能の範囲で書くというのは君が散々Cより改良されてると言ってる諸言語でも同じ
666デフォルトの名無しさん (ワッチョイ 8926-uWhl)
2026/07/16(木) 12:23:52.40ID:AMrrXlFD0 >>661
> そもそもこの仕様を変更したとして、誰にも何らデメリット無いのだから、
新しい仕様に依存したコードが書かれる様なるとそれに対応しない処理系の使用は絶望的になるからデメリット大きい。
適当に同じ処理まとめるだとか処理の順番入れ替えるだとかの自由も奪うことになると最適化の自由度も今より下がる。
> そもそもこの仕様を変更したとして、誰にも何らデメリット無いのだから、
新しい仕様に依存したコードが書かれる様なるとそれに対応しない処理系の使用は絶望的になるからデメリット大きい。
適当に同じ処理まとめるだとか処理の順番入れ替えるだとかの自由も奪うことになると最適化の自由度も今より下がる。
667デフォルトの名無しさん (ワッチョイ 8934-UT5n)
2026/07/16(木) 12:24:26.60ID:tqJQMSog0 >>658
> 生産性を上げる為には仕様内の差異を潰す(仕様を絞る)事をしないといけない
これはそもそも間違ったことを書いている
正しくは
> 生産性を上げる為には仕様内の差異を潰す(挙動を絞る)事をしないといけない
となる
で、なんでそんなことを必要とするのかと言えば、仕様に準拠しない書き方をしているからでしかない
仕様で保証されていない挙動を勝手に前提としてコードを書き、その通りにならない環境が出てくるからそういう作業が始まる
最初から仕様に定められた通りに解釈していれば、この無駄な作業は発生していない
> 生産性を上げる為には仕様内の差異を潰す(仕様を絞る)事をしないといけない
これはそもそも間違ったことを書いている
正しくは
> 生産性を上げる為には仕様内の差異を潰す(挙動を絞る)事をしないといけない
となる
で、なんでそんなことを必要とするのかと言えば、仕様に準拠しない書き方をしているからでしかない
仕様で保証されていない挙動を勝手に前提としてコードを書き、その通りにならない環境が出てくるからそういう作業が始まる
最初から仕様に定められた通りに解釈していれば、この無駄な作業は発生していない
668デフォルトの名無しさん (ワッチョイ 8934-UT5n)
2026/07/16(木) 12:26:17.55ID:tqJQMSog0669デフォルトの名無しさん (ワッチョイ 8934-UT5n)
2026/07/16(木) 12:27:42.73ID:tqJQMSog0670デフォルトの名無しさん (ワッチョイ 8926-uWhl)
2026/07/16(木) 12:28:29.06ID:AMrrXlFD0 C言語は仕様を完全に理解し未定義動作を絶対に踏まないパーフェクト超人向けの言語として舵切ってるのでJavaScriptみたいな素人向け言語の方針になびいたりすることは今後もなかろう。
671デフォルトの名無しさん (ワッチョイ 8934-UT5n)
2026/07/16(木) 12:30:37.51ID:tqJQMSog0 >>658
> コンパイラ作成側が1mmも譲らず、あらゆる自由度を最適化余地の既得権益としてるからだが、
未定義動作の意味を理解していないからこんな妄想が出てくる
どんな言語でも仕様の範囲外をどう処理するかはコンパイラやランタイムの自由で、そういうコードは「書いてはいけない」というのは共通している
書いてはいけないコードを書いた結果壊れるのは当たり前で、コンパイラが悪いというのは的外れな主張だ
> コンパイラ作成側が1mmも譲らず、あらゆる自由度を最適化余地の既得権益としてるからだが、
未定義動作の意味を理解していないからこんな妄想が出てくる
どんな言語でも仕様の範囲外をどう処理するかはコンパイラやランタイムの自由で、そういうコードは「書いてはいけない」というのは共通している
書いてはいけないコードを書いた結果壊れるのは当たり前で、コンパイラが悪いというのは的外れな主張だ
672デフォルトの名無しさん (ワッチョイ 8934-UT5n)
2026/07/16(木) 12:38:17.69ID:tqJQMSog0 >>670
> C言語は仕様を完全に理解し未定義動作を絶対に踏まないパーフェクト超人向けの言語
これはガチ
別に舵切ったわけじゃなくて最初(仕様が公開された時点)からそうなんだけどね
だから「できない奴は去れ」なんだよな
> C言語は仕様を完全に理解し未定義動作を絶対に踏まないパーフェクト超人向けの言語
これはガチ
別に舵切ったわけじゃなくて最初(仕様が公開された時点)からそうなんだけどね
だから「できない奴は去れ」なんだよな
673デフォルトの名無しさん (ワッチョイ f93c-K2DK)
2026/07/16(木) 12:52:20.03ID:ydvs2Ppy0674デフォルトの名無しさん (ガックシ 06b5-UT5n)
2026/07/16(木) 16:00:50.92ID:Wb6p8Q0G6 >>673
> 資産はコードであって、コンパイラではない。
コードが資産なのにコードを動かせないコンパイラが支配的になると困るって話だろ
お前ホント日本語読めないよな
> コンパイラは改修すればいいだけ。
コンパイラも資産であるコードの一部であって、全部改修とか現実見てない奴しか言えないバカげた妄言の最たるもの
あと、まだ >>667 と >>671 で否定した
> コードの品質を上げるべく、仕様を絞ったほうがいい
とかいうバカげた主張を何の反省もなく繰り返してるんだな
バカの一つ覚えとはこのこと
> おかしな選民思想を持たず、タダで出来る安全装置は付けるべきだろう。
おかしな選民思想ではなく、ただの事実だよw
C言語は正しく書ける奴が正しく書くことを前提に仕様が決まっている
安全装置が欲しければRust書いてろって話
> 資産はコードであって、コンパイラではない。
コードが資産なのにコードを動かせないコンパイラが支配的になると困るって話だろ
お前ホント日本語読めないよな
> コンパイラは改修すればいいだけ。
コンパイラも資産であるコードの一部であって、全部改修とか現実見てない奴しか言えないバカげた妄言の最たるもの
あと、まだ >>667 と >>671 で否定した
> コードの品質を上げるべく、仕様を絞ったほうがいい
とかいうバカげた主張を何の反省もなく繰り返してるんだな
バカの一つ覚えとはこのこと
> おかしな選民思想を持たず、タダで出来る安全装置は付けるべきだろう。
おかしな選民思想ではなく、ただの事実だよw
C言語は正しく書ける奴が正しく書くことを前提に仕様が決まっている
安全装置が欲しければRust書いてろって話
675デフォルトの名無しさん (ガックシ 06b5-UT5n)
2026/07/16(木) 16:02:03.60ID:Wb6p8Q0G6 だから親切に最初からf93c-K2DKみたいな奴向けにRustはあるんだって言ってやってるのに、頭使えないからかバカにして見下してるせいで認められない
676デフォルトの名無しさん (ガックシ 06b5-UT5n)
2026/07/16(木) 16:13:16.63ID:Wb6p8Q0G6 C言語は自分で仕様チェックしてその通り書ける奴のための言語
それができないならRustコンパイラに丁寧に教えてもらいなさいw
それができないならRustコンパイラに丁寧に教えてもらいなさいw
677デフォルトの名無しさん (ワッチョイ 89c0-176r)
2026/07/16(木) 17:30:07.71ID:LAo9fD1s0 >>659
ソードってPIPSのSORD?
ソードってPIPSのSORD?
678デフォルトの名無しさん (ワッチョイ 6625-Y/mm)
2026/07/16(木) 18:08:57.80ID:fgqOLN+Y0 あそこは東芝が捕食した
679デフォルトの名無しさん (ワッチョイ 8995-S39p)
2026/07/16(木) 18:57:04.27ID:ZwV5Ocxz0 最近はCで書いてAIにRUSTに書き直してもらってる
680デフォルトの名無しさん (ササクッテロラ Spbd-TjJb)
2026/07/16(木) 19:03:30.95ID:uqiKuVosp681デフォルトの名無しさん (アウアウウー Sa21-xAtI)
2026/07/16(木) 21:11:52.38ID:vcbnvdP8a >>659
> (ただまあ、個人的にはRustではないな、と見てる。あれはゴミだ)
ゴミとまでは思わないけど
宣伝文句に対して力不足だと思う
俺も出始めのころから2017年?くらいまでは熱心に追いかけてたけど
なんかもう特にコメントするところもない言語って感じ
Scalaなんかも出始めのころ画期的に見えたけどこれももう何も言うことはない
> (ただまあ、個人的にはRustではないな、と見てる。あれはゴミだ)
ゴミとまでは思わないけど
宣伝文句に対して力不足だと思う
俺も出始めのころから2017年?くらいまでは熱心に追いかけてたけど
なんかもう特にコメントするところもない言語って感じ
Scalaなんかも出始めのころ画期的に見えたけどこれももう何も言うことはない
682デフォルトの名無しさん (JP 0Hd2-Klls)
2026/07/16(木) 21:57:29.54ID:Y27OUNXyH >>679
言語を変えるならjavaスクリプトからラストとかなら分かるけど、その例だとコード実行速度あんまり上がらなさそう
言語を変えるならjavaスクリプトからラストとかなら分かるけど、その例だとコード実行速度あんまり上がらなさそう
683デフォルトの名無しさん (ワッチョイ 8934-UT5n)
2026/07/16(木) 22:20:07.90ID:tqJQMSog0684デフォルトの名無しさん (ワッチョイ 8934-UT5n)
2026/07/16(木) 22:20:43.74ID:tqJQMSog0 そもそも実用的なプログラミング言語に「驚きと楽しさで満ち溢れ」てもらっては困る
685デフォルトの名無しさん (ワッチョイ 8934-UT5n)
2026/07/16(木) 22:22:57.40ID:tqJQMSog0686デフォルトの名無しさん (ワッチョイ 8934-UT5n)
2026/07/16(木) 22:23:55.35ID:tqJQMSog0 安全にするためのルールにも文句を言う、でも安全じゃないのは欠陥だと喚く、要するに自分の忍耐も努力も足りないことを他人のせいにしているだけ
687デフォルトの名無しさん (ワッチョイ 8934-UT5n)
2026/07/16(木) 23:22:22.34ID:tqJQMSog0688デフォルトの名無しさん (ワッチョイ 8934-UT5n)
2026/07/17(金) 19:07:04.68ID:eJfcvx1B0 やっぱAnnex Kってゴミだわ
689デフォルトの名無しさん (ワッチョイ 61b5-UT5n)
2026/07/17(金) 22:40:36.31ID:JPfZ12kA0 _s 関数使えたもんじゃないよな
690デフォルトの名無しさん (ワッチョイ 6108-UT5n)
2026/07/17(金) 22:55:21.97ID:SImBWJDs0 あれは失敗規格だから
691デフォルトの名無しさん (ワッチョイ 8934-UT5n)
2026/07/18(土) 13:25:30.49ID:BkyklCKZ0 エラー出たら勝手に落ちたり防ぎたかったら変なん渡さなきゃいけなかったりめんどくさすぎる
692デフォルトの名無しさん (ワッチョイ 8934-UT5n)
2026/07/18(土) 20:56:27.68ID:BkyklCKZ0 やっぱりMinGW使った方がいいな
693デフォルトの名無しさん (ワッチョイ 8934-UT5n)
2026/07/18(土) 20:56:42.79ID:BkyklCKZ0 あ、下げ忘れた
694デフォルトの名無しさん (アウアウウー Sa9b-5MuH)
2026/07/19(日) 06:33:39.80ID:Frm9xG3ua GNU/LinuxでGCCがいいよ
695デフォルトの名無しさん (ワントンキン MM7f-djho)
2026/07/19(日) 10:12:10.69ID:7xyOc8N5M 仮想ソフト使ってインストールしている
696デフォルトの名無しさん (ワッチョイ b734-Yk6U)
2026/07/20(月) 17:46:06.08ID:FTzidL2p0 >>694
OSは好きで選べるもんじゃないから、Linux上で開発しても結局最終的にはMinGWに頼ることにはなるよ
OSは好きで選べるもんじゃないから、Linux上で開発しても結局最終的にはMinGWに頼ることにはなるよ
697デフォルトの名無しさん (ワントンキン MM7f-djho)
2026/07/20(月) 19:02:44.52ID:TtocmnrPM 最終OSは発注者が決める
698はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 97aa-0hM1)
2026/07/20(月) 20:07:24.83ID:XCZRRui30 クロス開発しても動作確認 (テスト) をしないわけにはいかないのだし、 Windows 用のソフトウェアを作るという前提なら Linux 上でやる意味はそんなにないな。
以前の Windows はパッケージマネージャが駄目だったから環境構築が面倒だったけど今は scoop とかがあるし。
以前の Windows はパッケージマネージャが駄目だったから環境構築が面倒だったけど今は scoop とかがあるし。
699デフォルトの名無しさん (ワッチョイ ff25-LtPz)
2026/07/23(木) 13:24:55.11ID:pykcIHbI0 オレなんかが仮想環境利用するのは、
1台でサバクラ環境作れるからなんだわ
1台でサバクラ環境作れるからなんだわ
700デフォルトの名無しさん (ワッチョイ 7763-knxu)
2026/07/24(金) 05:10:49.53ID:taerOtS60 MinGWはWindowsでGCC使えていいよな
701デフォルトの名無しさん (ワッチョイ 1625-ibtG)
2026/07/26(日) 12:41:26.26ID:VyQRUqSH0 一応windowsで使えるgccはある
702デフォルトの名無しさん (ワッチョイ 126a-x+NG)
2026/07/27(月) 04:55:21.25ID:e++5CBjU0 wsl でやるのが楽
703はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 63f8-LhV6)
2026/07/27(月) 09:41:26.81ID:8CHRIz050 MinGW の Min は Minimal の Min
実際には autotools などのツールチェインやパッケージマネージャと連携しないと使えるライブラリのビルドや利用がやりづらいので Cygwin や Msys2 などの環境内で MinGW を入れたほうが良いと思う。
WSL でも良いけど MinGW のために WSL を入れるのだとしたらちょっと過剰かもしれない。
実際には autotools などのツールチェインやパッケージマネージャと連携しないと使えるライブラリのビルドや利用がやりづらいので Cygwin や Msys2 などの環境内で MinGW を入れたほうが良いと思う。
WSL でも良いけど MinGW のために WSL を入れるのだとしたらちょっと過剰かもしれない。
704デフォルトの名無しさん (ワッチョイ e3a4-+EzY)
2026/07/27(月) 12:35:14.45ID:PNTs1cOJ0 Minimalistな、MSYSじゃねーんだからw
Minimal GNUじゃ表したい概念とちょっと違うだろうよ
Minimal GNUじゃ表したい概念とちょっと違うだろうよ
705デフォルトの名無しさん (ワッチョイ 8667-+gKb)
2026/07/27(月) 12:48:11.63ID:oRGv7FaG0 Minimalist GNU for Windows
らしい
らしい
706デフォルトの名無しさん (スップ Sd52-UNRu)
2026/07/28(火) 15:57:03.29ID:HGwE9+Ced707デフォルトの名無しさん (ワッチョイ 5398-ibtG)
2026/07/30(木) 13:39:05.46ID:yLT+MEzH0 お礼は物の方が良いぞ
ここに住所と氏名を書いておけ
ここに住所と氏名を書いておけ
708デフォルトの名無しさん (ワッチョイ e375-wiNW)
2026/07/30(木) 14:32:08.34ID:Jc6qJmGq0 >>706
掲示板にそういうのを求めても意味はない
掲示板にそういうのを求めても意味はない
709デフォルトの名無しさん (ワッチョイ 53b0-x+NG)
2026/07/30(木) 16:31:20.42ID:CgQTNK3f0 お札を送る
710デフォルトの名無しさん (ワッチョイ 5398-ibtG)
2026/07/30(木) 17:05:29.27ID:yLT+MEzH0 どこの神社が良いですか?
711デフォルトの名無しさん (ワッチョイ 5367-6PXk)
2026/07/30(木) 17:42:55.17ID:4lG5CXrP0 昔cygwinとかあったけどな
712デフォルトの名無しさん (ワッチョイ 5398-ibtG)
2026/07/30(木) 18:03:04.84ID:yLT+MEzH0 悪バグ退散!
713デフォルトの名無しさん (ワッチョイ e38f-wiNW)
2026/07/30(木) 21:20:21.35ID:Jc6qJmGq0 >>710
神社に行って参拝してはならない
神社に行って参拝してはならない
714デフォルトの名無しさん (ワッチョイ 126a-x+NG)
2026/07/31(金) 16:28:40.30ID:MilBLIr/0715デフォルトの名無しさん (ワッチョイ 5334-IkFD)
2026/08/01(土) 02:40:44.14ID:fT3Cj9Cj0 WSLは結局Linux仮想環境だからそこでビルドしたってそのままじゃWindows向けには動かせない
Linux側でクロスコンパイルするにしても、Windows側でコンパイルするにしても、MinGW-w64 UCRT64を使うのが王道
Linux側でクロスコンパイルするにしても、Windows側でコンパイルするにしても、MinGW-w64 UCRT64を使うのが王道
716デフォルトの名無しさん (ワッチョイ 534e-ibtG)
2026/08/01(土) 20:10:39.84ID:WJ2D9tE50 OS固有の機能を使ってないのであれば
Windowsでも動くんではないですか?
Windowsでも動くんではないですか?
717はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 63f8-LhV6)
2026/08/01(土) 20:24:51.00ID:PAijeuDp0 そもそも実行ファイルフォーマット (をメモリに展開するローダの仕様) がOS固有なので……
Linux だと ELF で Windows は PE
Linux だと ELF で Windows は PE
718デフォルトの名無しさん (ワッチョイ 534e-ibtG)
2026/08/01(土) 21:29:20.93ID:WJ2D9tE50 それはそうですね
言葉が不足しました。
言葉が不足しました。
719デフォルトの名無しさん (ワッチョイ 8325-ODcf)
2026/08/02(日) 08:29:31.94ID:VpP1GNu10 DOS時代はハード固有の機能を使わければ(キーボードBIOS使わず標準入力関連コマンドを使う等)
同じ系列のCPU/OSの他ハード(PC-98/TOWNS/DOS/V)でも動くというのはあった。
同じ系列のCPU/OSの他ハード(PC-98/TOWNS/DOS/V)でも動くというのはあった。
720デフォルトの名無しさん (ワッチョイ ff6a-IV3f)
2026/08/02(日) 10:11:48.55ID:4pM5NiIU0 OSというのは元々そういう互換性を狙って作られたものだった
721はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 4377-x+kN)
2026/08/02(日) 12:24:33.49ID:wd/chQhv0 UNIX 以降の OS はハードウェアの違いを吸収する仕組みがある程度はあるけど最初からそれを目的のひとつとしていたかと言うとちょっと疑問。
数十年前に雑誌 (おそらく UNIX USER だったと思う) の連載記事で読んだことがあるようなないような曖昧な記憶だから不確かだけど。
数十年前に雑誌 (おそらく UNIX USER だったと思う) の連載記事で読んだことがあるようなないような曖昧な記憶だから不確かだけど。
722デフォルトの名無しさん (ワッチョイ cf25-oDgT)
2026/08/02(日) 19:57:26.73ID:r6PbvvWa0 汎用機の世界でも、富士通がIBM互換を狙った理由はそれでしょう
723デフォルトの名無しさん (ワッチョイ cfa9-ZC/C)
2026/08/08(土) 07:51:37.48ID:tgeCoHLT0 5ch でズレないヘミ猫ない?
或いは誰か作ってくれない?
これしか見つからなかった。
http://kako.5ch.io/test/read.cgi/tech/1101615970/
ヘ_ヘ
ミ・・ ミ
( °)〜
或いは誰か作ってくれない?
これしか見つからなかった。
http://kako.5ch.io/test/read.cgi/tech/1101615970/
ヘ_ヘ
ミ・・ ミ
( °)〜
724デフォルトの名無しさん (ワッチョイ de25-/Ozg)
2026/08/10(月) 10:47:56.84ID:YQMvMFmB0 奥さん優秀な方だよな
725デフォルトの名無しさん (ワッチョイ ca6a-a205)
2026/08/11(火) 04:41:54.97ID:HGIrT5e70 ヘ_ヘ
ミ・・ ミ
( ° )~
これでどうか?
ミ・・ ミ
( ° )~
これでどうか?
726デフォルトの名無しさん (ワッチョイ ca6a-a205)
2026/08/11(火) 04:56:00.15ID:HGIrT5e70 ヘ_ヘ
ミ・・ ミ
( ° )~
難しいな
ミ・・ ミ
( ° )~
難しいな
727デフォルトの名無しさん (ワッチョイ ca6a-a205)
2026/08/11(火) 04:58:05.08ID:HGIrT5e70 ヘ_ヘ
ミ・ ・ミ
( ° )~
うーん・・・
ミ・ ・ミ
( ° )~
うーん・・・
728はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 5ff8-aIk1)
2026/08/11(火) 07:11:42.65ID:mx4kfv350 2ちゃんねるの AA はMS Pゴシックを前提にする習慣なので微調整が必要であればメモ帳でMS Pゴシックを設定して微調整すべし。
各ブラウジング環境のフォント次第なのでズレない方法というのは無い。
各ブラウジング環境のフォント次第なのでズレない方法というのは無い。
729デフォルトの名無しさん (アウアウウー Sa2f-a205)
2026/08/11(火) 12:49:50.22ID:ptuB6G5ta 質問者は
gccを使いたいのか
cygwinを使いたいのか
windowsを使いたいのか
はっきりさせるべき
gccを使いたいのか
cygwinを使いたいのか
windowsを使いたいのか
はっきりさせるべき
730デフォルトの名無しさん (ワッチョイ d7f5-/mPH)
2026/08/11(火) 17:03:31.82ID:8gMqyrhP0 OpenLDAPみたいなプログラムを作ってみたくて、はじめてのCを買ってきました。
何日位で作れそうですか?
何日位で作れそうですか?
731デフォルトの名無しさん (ワッチョイ dffb-DzFd)
2026/08/11(火) 17:38:38.39ID:+J6O4mZm0 半日
732デフォルトの名無しさん (ワッチョイ de25-/Ozg)
2026/08/11(火) 18:41:29.94ID:dw8FDprd0 作るのは簡単
動くかどうかは不明
動くかどうかは不明
733デフォルトの名無しさん (ワッチョイ 0606-hmzW)
2026/08/12(水) 08:45:34.52ID:VHBhB4BD0734デフォルトの名無しさん (ワッチョイ 0fec-QY+j)
2026/08/12(水) 11:07:31.96ID:9FHMbNhA0 まずはポインタの習得が肝心だよ
735デフォルトの名無しさん (ワッチョイ de25-/Ozg)
2026/08/14(金) 19:08:29.19ID:psnt77tf0 ポインタの習得できたら、
次はなんですかね?
次はなんですかね?
736はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 334c-AEB6)
2026/08/14(金) 20:24:35.19ID:aAzkQlPJ0 たとえばポインタについて細部を学ぼうとしたらメモリ管理とも型システムとも強い関連性があって、それらを無視して理解することはできない。
つまりひとつを完全に習得してから次の機能を学ぶなんていうきちんとした順序はつけられない。
そこをどうにかして上手いことわかりやするために入門書は腐心してるのでとりあえず一旦は入門書を最後まで読んで理解することに努めたらいいと思う。
こんなところで聞くより入門書の著者や編者の努力を信じるべき。
どうしても理解できない箇所をピンポイントで尋ねるなら掲示板も良いだろうけど本の体系的な説明のほうが全体としては良い説明になってるはずだよ。
つまりひとつを完全に習得してから次の機能を学ぶなんていうきちんとした順序はつけられない。
そこをどうにかして上手いことわかりやするために入門書は腐心してるのでとりあえず一旦は入門書を最後まで読んで理解することに努めたらいいと思う。
こんなところで聞くより入門書の著者や編者の努力を信じるべき。
どうしても理解できない箇所をピンポイントで尋ねるなら掲示板も良いだろうけど本の体系的な説明のほうが全体としては良い説明になってるはずだよ。
737デフォルトの名無しさん (ワッチョイ c36a-/mPH)
2026/08/14(金) 23:16:13.50ID:A9d+qFaE0 おすすめ「苦しんで覚えるC言語」
サイトもあるけど、やっぱり本じゃないとね
古い本だから今更新品の本を買う必要なし、アマゾンで中古本をポチればいいよ
サイトもあるけど、やっぱり本じゃないとね
古い本だから今更新品の本を買う必要なし、アマゾンで中古本をポチればいいよ
738デフォルトの名無しさん (ワッチョイ de25-/Ozg)
2026/08/14(金) 23:45:48.71ID:psnt77tf0 電子書籍で良いのでは
739デフォルトの名無しさん (ワッチョイ 0f93-s4ga)
2026/08/15(土) 01:05:25.19ID:AdrCUUhP0 > おすすめ「苦しんで覚えるC言語」
サイト見たけど間違い結構あるなw
サイト見たけど間違い結構あるなw
740デフォルトの名無しさん (ワッチョイ 3316-Rd74)
2026/08/15(土) 01:39:47.95ID:3eHbAMFe0 Geminiのガイド付き学習でインタラクティブに学習できるよ
そういう時代
そういう時代
741はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 5ff8-aIk1)
2026/08/15(土) 07:47:55.99ID:Wxt72Cnl0 質問が見当はずれだと回答もよくわからん。
Gemini に手伝ってもらうにしてもベースとしてはちょっとした入門書はあったほうが良い。
Gemini に手伝ってもらうにしてもベースとしてはちょっとした入門書はあったほうが良い。
742デフォルトの名無しさん (ワッチョイ de25-/Ozg)
2026/08/15(土) 09:06:14.48ID:GGQ2s86t0 ちょっとした入門の、
範囲が知りたいんだが
範囲が知りたいんだが
743デフォルトの名無しさん (ワッチョイ 0f93-s4ga)
2026/08/15(土) 10:55:07.00ID:AdrCUUhP0 > ちょっとした入門の、範囲
未定義動作を正確な知識により踏まなくなる程度
未定義動作を正確な知識により踏まなくなる程度
744デフォルトの名無しさん (ワッチョイ df70-H3bd)
2026/08/15(土) 10:59:52.53ID:mirUALuA0 Z知能にCは無理
Rust知能にもCは無理
Rust知能にもCは無理
745デフォルトの名無しさん (ワッチョイ de25-/Ozg)
2026/08/15(土) 11:04:02.85ID:GGQ2s86t0 殆どの人はそれで十分だと思うよな
746はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 5ff8-aIk1)
2026/08/15(土) 11:24:16.96ID:Wxt72Cnl0 私が入門したのは何十年も前の話だから……その頃の感覚で言われても困るだろう。
C に入門するより先に機械語をいじっていたタイプの学習ルートを経ていて、私の同世代は少なからずそんなものだが明らかに現代的な学習ルートではない。
そんで分かってしまうといまさら入門書を見て良し悪しの評価なんかできない。
説明に間違いがあれば指摘はできるけど分かり易さは別の話だし、方便として多少の不正確さを許容したほうが良い場合もあるし。
おそらく入門書は教育者が実際に教育に使いながらフィードバックを重ねたものが良いものになるんじゃないかと思う。
C に入門するより先に機械語をいじっていたタイプの学習ルートを経ていて、私の同世代は少なからずそんなものだが明らかに現代的な学習ルートではない。
そんで分かってしまうといまさら入門書を見て良し悪しの評価なんかできない。
説明に間違いがあれば指摘はできるけど分かり易さは別の話だし、方便として多少の不正確さを許容したほうが良い場合もあるし。
おそらく入門書は教育者が実際に教育に使いながらフィードバックを重ねたものが良いものになるんじゃないかと思う。
747デフォルトの名無しさん (ワッチョイ de25-/Ozg)
2026/08/15(土) 17:28:19.72ID:GGQ2s86t0 す自動変数
748デフォルトの名無しさん (ワッチョイ de25-/Ozg)
2026/08/15(土) 17:29:53.06ID:GGQ2s86t0 すまん
自動変数を一杯宣言し過ぎてスタック破壊した経験ってないですか?
自動変数を一杯宣言し過ぎてスタック破壊した経験ってないですか?
749デフォルトの名無しさん (ワッチョイ dfab-H3bd)
2026/08/15(土) 18:09:54.17ID:mirUALuA0750デフォルトの名無しさん (ワッチョイ dfab-H3bd)
2026/08/15(土) 18:13:40.05ID:mirUALuA0 >>748
コンパイル時に指定すればスタックサイズを増量できる
コンパイル時に指定すればスタックサイズを増量できる
751はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 5ff8-aIk1)
2026/08/15(土) 18:33:03.44ID:Wxt72Cnl0 >>750
Windows だとスタックの上限は実行ファイル内に格納されるパラメータだからコンパイル時の指定で変えられるけど現代的 OS の一般論としては OS の側の設定値として持っているのが普通だと思う。
少なくとも Linux や BSD だとそうなってる。
Windows だとスタックの上限は実行ファイル内に格納されるパラメータだからコンパイル時の指定で変えられるけど現代的 OS の一般論としては OS の側の設定値として持っているのが普通だと思う。
少なくとも Linux や BSD だとそうなってる。
752デフォルトの名無しさん (ワッチョイ 6fe4-sddm)
2026/08/15(土) 18:51:17.00ID:vxBg0KLF0 普通はヒープ使うからなぁ
753デフォルトの名無しさん (ワッチョイ 0fa5-/Ozg)
2026/08/15(土) 18:57:49.45ID:PdMcshzj0 unix用のgccだとlinkerのオプションだったと思う。
ただ聞きたかったことはそう言うこたではなかったです。
ただ聞きたかったことはそう言うこたではなかったです。
754デフォルトの名無しさん (ワッチョイ b34e-wPbG)
2026/08/15(土) 19:06:09.15ID:mHgsoPfB0 ふん fixup overflow の呪いを受ければ良いんだ。 :-p
※開発中にこれを喰らうとデスマ確定のLINKエラーw
※開発中にこれを喰らうとデスマ確定のLINKエラーw
755デフォルトの名無しさん (ワッチョイ 0606-hmzW)
2026/08/15(土) 20:03:09.70ID:DGyWizKz0756デフォルトの名無しさん (ワッチョイ 0f4b-/Ozg)
2026/08/15(土) 20:40:50.03ID:PdMcshzj0 >>755
さう、それです。
元々FORTRANで書かれていたプログラムを移植してました。
各ロジックの移植までは良かったんですが、
配列宣言が関数内に複数個、それぞれ要素数が数万個ありました。
最終的にヒープに取ることにしましたが、あまり納得はできなかったです。
さう、それです。
元々FORTRANで書かれていたプログラムを移植してました。
各ロジックの移植までは良かったんですが、
配列宣言が関数内に複数個、それぞれ要素数が数万個ありました。
最終的にヒープに取ることにしましたが、あまり納得はできなかったです。
757デフォルトの名無しさん (ワッチョイ df20-H3bd)
2026/08/15(土) 23:19:14.61ID:mirUALuA0 >>756
それは移植戦略を間違ってる。
FORTRANなんてグローバル変数しかなく、
つまりローカル変数が無くて再帰も出来ない糞言語で、だからこそ廃れたわけだが、
C流のきちんとしたコードに直してやる必要が最初から無い。
まんま全部グローバルでも変数名が被らないのは元ソースが保証してるし、
Cのグローバルはファイル内スコープであり、externしなければ他ファイルからも見えないので、
ファイルを分けておけば他とも被らない。
ただまあ、それでも、スタックサイズを調整するのも一つの正しい方策だと思うけど。
実行時のフットプリントは同じだし。
ちな、FORTRANの移植時には多次元配列の格納順が違うからそこだけ注意な。
https://iifx.dev/ja/articles/457242272/%E9%85%8D%E5%88%97%E3%81%AE%E6%A0%BC%E7%B4%8D%E9%A0%86%E5%BA%8F%E3%81%8C%E6%8B%9B%E3%81%8F%E6%82%B2%E5%8A%87-c%E8%A8%80%E8%AA%9E%E3%81%A8fortran%E3%81%AB%E3%81%8A%E3%81%91%E3%82%8B%E3%82%AD%E3%83%A3%E3%83%83%E3%82%B7%E3%83%A5%E5%8A%B9%E7%8E%87%E3%81%A8%E6%9C%80%E9%81%A9%E5%8C%96%E3%81%AE%E6%88%A6%E3%81%84
>>753
> ただ聞きたかったことはそう言うこたではなかったです。
死ねよクソZ。
お前らは全て他責なのが駄目だ。
「FORTRANからの移植時に」とお前が最初から言えば回避出来た話だろ。
それは移植戦略を間違ってる。
FORTRANなんてグローバル変数しかなく、
つまりローカル変数が無くて再帰も出来ない糞言語で、だからこそ廃れたわけだが、
C流のきちんとしたコードに直してやる必要が最初から無い。
まんま全部グローバルでも変数名が被らないのは元ソースが保証してるし、
Cのグローバルはファイル内スコープであり、externしなければ他ファイルからも見えないので、
ファイルを分けておけば他とも被らない。
ただまあ、それでも、スタックサイズを調整するのも一つの正しい方策だと思うけど。
実行時のフットプリントは同じだし。
ちな、FORTRANの移植時には多次元配列の格納順が違うからそこだけ注意な。
https://iifx.dev/ja/articles/457242272/%E9%85%8D%E5%88%97%E3%81%AE%E6%A0%BC%E7%B4%8D%E9%A0%86%E5%BA%8F%E3%81%8C%E6%8B%9B%E3%81%8F%E6%82%B2%E5%8A%87-c%E8%A8%80%E8%AA%9E%E3%81%A8fortran%E3%81%AB%E3%81%8A%E3%81%91%E3%82%8B%E3%82%AD%E3%83%A3%E3%83%83%E3%82%B7%E3%83%A5%E5%8A%B9%E7%8E%87%E3%81%A8%E6%9C%80%E9%81%A9%E5%8C%96%E3%81%AE%E6%88%A6%E3%81%84
>>753
> ただ聞きたかったことはそう言うこたではなかったです。
死ねよクソZ。
お前らは全て他責なのが駄目だ。
「FORTRANからの移植時に」とお前が最初から言えば回避出来た話だろ。
758デフォルトの名無しさん (ワッチョイ df20-H3bd)
2026/08/15(土) 23:22:33.88ID:mirUALuA0 >>751
> 現代的 OS の一般論としては OS の側の設定値として持っているのが普通
Linuxではulimit -s で変えられるらしいが、どっちが「普通」かには異議ありだな。
そもそもそのプログラムがスタックを大量に消費することはプログラマしか知らない。
だからコンパイル時にマークしておく必要があり、その上で、
システム側で許容された値以下なら許可する、という方式が正しいだろ。
Linux方式だと、エラーになったらその都度対応してくれ、ただどれくらい必要なのかは知らん、というマヌケな事を強制する仕様ではないか。
exeに明記されてれば、少なくとも、静的に大量確保される場合は完全に対応できる。今回もそうだろ。
Windowsの仕様のほうが「普通」で「正しい」と俺は思うね。(よりマシな仕様)
> 現代的 OS の一般論としては OS の側の設定値として持っているのが普通
Linuxではulimit -s で変えられるらしいが、どっちが「普通」かには異議ありだな。
そもそもそのプログラムがスタックを大量に消費することはプログラマしか知らない。
だからコンパイル時にマークしておく必要があり、その上で、
システム側で許容された値以下なら許可する、という方式が正しいだろ。
Linux方式だと、エラーになったらその都度対応してくれ、ただどれくらい必要なのかは知らん、というマヌケな事を強制する仕様ではないか。
exeに明記されてれば、少なくとも、静的に大量確保される場合は完全に対応できる。今回もそうだろ。
Windowsの仕様のほうが「普通」で「正しい」と俺は思うね。(よりマシな仕様)
759デフォルトの名無しさん (ワッチョイ 0f4b-/Ozg)
2026/08/15(土) 23:43:09.22ID:PdMcshzj0760デフォルトの名無しさん (ワッチョイ df03-H3bd)
2026/08/15(土) 23:59:34.06ID:mirUALuA0 >>759
お前が頭おかしいのは分かった
お前が頭おかしいのは分かった
761デフォルトの名無しさん (ワッチョイ 4f96-4rlT)
2026/08/18(火) 11:51:13.26ID:9hHWpynz0762デフォルトの名無しさん (ワッチョイ ef06-inpB)
2026/08/18(火) 13:47:12.21ID:DGdHd5vj0 >>761
引用されるまで気にしなかったけど
ファイル内スコープ(内部結合)にしたければstaticを付けてください
staticを付けない広域変数はextern参照されなくても外部結合なので、複数のファイルで同名の定義を行うと多重定義となってリンクができない
引用されるまで気にしなかったけど
ファイル内スコープ(内部結合)にしたければstaticを付けてください
staticを付けない広域変数はextern参照されなくても外部結合なので、複数のファイルで同名の定義を行うと多重定義となってリンクができない
763デフォルトの名無しさん (ワッチョイ 7baf-yVDb)
2026/08/18(火) 14:11:12.85ID:6VzK0iZS0 > Cのグローバルはファイル内スコープであり、externしなければ他ファイルからも見えないので、
初期化子を書かない仮定義かなんかを誤解してる希ガス
初期化子を書かない仮定義かなんかを誤解してる希ガス
764デフォルトの名無しさん (ワッチョイ eb16-JdrN)
2026/08/19(水) 19:13:07.84ID:n/MO8lqQ0 2000年頃にやったプロジェクトでC/C++対応ヘッダに
Cコンパイラでは
int c;
C++コンパイラでは
extern int c;
となるように書かれてたな。
Cコンパイラでは
int c;
C++コンパイラでは
extern int c;
となるように書かれてたな。
765デフォルトの名無しさん (ワッチョイ 0f25-W9YX)
2026/08/19(水) 19:27:44.40ID:qcCLYMYl0 >>764
Cの場合、そのヘッダーを複数Cソースでインクルードするのはまずくないですか?
Cの場合、そのヘッダーを複数Cソースでインクルードするのはまずくないですか?
レスを投稿する
ニュース
- 【沖縄】「許せない」「基地を返せ」 強盗殺人事件、沖縄に怒りの声 ★2 [ぐれ★]
- 【長野】特急列車に15歳の中学生がはねられ死亡 現場はJR大糸線の遮断機と警報器のない踏切内 警察が事故の原因を調べる 大町市 [ぐれ★]
- 【MLB】ドジャース戦の中継で疑問の声「ガラガラじゃない?」 地区S初戦なのに…発表5万人超も「何が起きてる」 [jinjin★]
- 【消費税国会】今日開会 野党対案は現金給付、10兆円ありきの論争へ [蚤の市★]
- 【中日】新監督有力候補に工藤公康氏浮上 地元出身、ソフトバンクで日本一5度の“優勝請負人” [征夷大将軍★]
- 【神奈川】駐車場でバックしていた乗用車が10歳と2歳を含む親子3人に衝突 父親は重傷 大和市 [ぐれ★]
- 【高市悲報】JKさん、遅刻して先生に説教され集団パニックになり7人救急搬送される... [334972637]
- 【超絶悲報】シャウエッセン、内容量激減のお知らせwwwwwwwwwwwwwwwwwwww [802034645]
- 「安倍さん、円安になったからコンビニおにぎりから海苔が消えたよ…」 [667744927]
- 🌀 台風 28号 「ノロ」 🌀 爆誕 [485983549]
- 【高市悲報】統一教会3世「たった一人の犯罪で米軍を否定するな!😡偏見を捨てろ!」これは正論🏺 [359965264]
- 「HOKA」、ガチで流行りまくる。外に出たらHOKA履いてる人しかいない。なんでダサいのに流行ってるの? [838847604]