探検


C言語なら俺に聞け 164

2025/07/23(水) 15:30:01.81ID:eCR5cXRr0
(新スレ立ての際上記コマンドを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
2026/07/20(月) 17:46:06.08ID:FTzidL2p0
>>694
OSは好きで選べるもんじゃないから、Linux上で開発しても結局最終的にはMinGWに頼ることにはなるよ
2026/07/20(月) 19:02:44.52ID:TtocmnrPM
最終OSは発注者が決める
2026/07/20(月) 20:07:24.83ID:XCZRRui30
クロス開発しても動作確認 (テスト) をしないわけにはいかないのだし、 Windows 用のソフトウェアを作るという前提なら Linux 上でやる意味はそんなにないな。
以前の Windows はパッケージマネージャが駄目だったから環境構築が面倒だったけど今は scoop とかがあるし。
2026/07/23(木) 13:24:55.11ID:pykcIHbI0
オレなんかが仮想環境利用するのは、
1台でサバクラ環境作れるからなんだわ
700デフォルトの名無しさん (ワッチョイ 7763-knxu)
垢版 |
2026/07/24(金) 05:10:49.53ID:taerOtS60
MinGWはWindowsでGCC使えていいよな
2026/07/26(日) 12:41:26.26ID:VyQRUqSH0
一応windowsで使えるgccはある
702デフォルトの名無しさん (ワッチョイ 126a-x+NG)
垢版 |
2026/07/27(月) 04:55:21.25ID:e++5CBjU0
wsl でやるのが楽
2026/07/27(月) 09:41:26.81ID:8CHRIz050
MinGW の Min は Minimal の Min

実際には autotools などのツールチェインやパッケージマネージャと連携しないと使えるライブラリのビルドや利用がやりづらいので Cygwin や Msys2 などの環境内で MinGW を入れたほうが良いと思う。
WSL でも良いけど MinGW のために WSL を入れるのだとしたらちょっと過剰かもしれない。
2026/07/27(月) 12:35:14.45ID:PNTs1cOJ0
Minimalistな、MSYSじゃねーんだからw
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+Ced
>>703
間違えてた知識教えてもらえて良かったじゃん
見たらお礼の一言でもあってもいいかもね
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
お札を送る
2026/07/30(木) 17:05:29.27ID:yLT+MEzH0
どこの神社が良いですか?
2026/07/30(木) 17:42:55.17ID:4lG5CXrP0
昔cygwinとかあったけどな
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/0
>>711
今もあるようだが
https://www.cygwin.com/
2026/08/01(土) 02:40:44.14ID:fT3Cj9Cj0
WSLは結局Linux仮想環境だからそこでビルドしたってそのままじゃWindows向けには動かせない
Linux側でクロスコンパイルするにしても、Windows側でコンパイルするにしても、MinGW-w64 UCRT64を使うのが王道
2026/08/01(土) 20:10:39.84ID:WJ2D9tE50
OS固有の機能を使ってないのであれば
Windowsでも動くんではないですか?
2026/08/01(土) 20:24:51.00ID:PAijeuDp0
そもそも実行ファイルフォーマット (をメモリに展開するローダの仕様) がOS固有なので……
Linux だと ELF で Windows は PE
2026/08/01(土) 21:29:20.93ID:WJ2D9tE50
それはそうですね
言葉が不足しました。
2026/08/02(日) 08:29:31.94ID:VpP1GNu10
DOS時代はハード固有の機能を使わければ(キーボードBIOS使わず標準入力関連コマンドを使う等)
同じ系列のCPU/OSの他ハード(PC-98/TOWNS/DOS/V)でも動くというのはあった。
720デフォルトの名無しさん (ワッチョイ ff6a-IV3f)
垢版 |
2026/08/02(日) 10:11:48.55ID:4pM5NiIU0
OSというのは元々そういう互換性を狙って作られたものだった
2026/08/02(日) 12:24:33.49ID:wd/chQhv0
UNIX 以降の OS はハードウェアの違いを吸収する仕組みがある程度はあるけど最初からそれを目的のひとつとしていたかと言うとちょっと疑問。
数十年前に雑誌 (おそらく UNIX USER だったと思う) の連載記事で読んだことがあるようなないような曖昧な記憶だから不確かだけど。
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/
  ヘ_ヘ
 ミ・・ ミ
 ( °)〜
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
 ヘ_ヘ
ミ・ ・ミ
 ( ° )~

うーん・・・
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を使いたいのか
はっきりさせるべき
2026/08/11(火) 17:03:31.82ID:8gMqyrhP0
OpenLDAPみたいなプログラムを作ってみたくて、はじめてのCを買ってきました。
何日位で作れそうですか?
731デフォルトの名無しさん (ワッチョイ dffb-DzFd)
垢版 |
2026/08/11(火) 17:38:38.39ID:+J6O4mZm0
半日
2026/08/11(火) 18:41:29.94ID:dw8FDprd0
作るのは簡単
動くかどうかは不明
2026/08/12(水) 08:45:34.52ID:VHBhB4BD0
>>730
本の内容から作るとすれば、標準入出力と構造体、制御構文、ファイル入出力を学んだら原型動作が作成可能かと。
何日で作れるかは読本ペースと理解度、追加機能とそのために必要な追加学習次第
734デフォルトの名無しさん (ワッチョイ 0fec-QY+j)
垢版 |
2026/08/12(水) 11:07:31.96ID:9FHMbNhA0
まずはポインタの習得が肝心だよ
2026/08/14(金) 19:08:29.19ID:psnt77tf0
ポインタの習得できたら、
次はなんですかね?
2026/08/14(金) 20:24:35.19ID:aAzkQlPJ0
たとえばポインタについて細部を学ぼうとしたらメモリ管理とも型システムとも強い関連性があって、それらを無視して理解することはできない。
つまりひとつを完全に習得してから次の機能を学ぶなんていうきちんとした順序はつけられない。
そこをどうにかして上手いことわかりやするために入門書は腐心してるのでとりあえず一旦は入門書を最後まで読んで理解することに努めたらいいと思う。
こんなところで聞くより入門書の著者や編者の努力を信じるべき。
どうしても理解できない箇所をピンポイントで尋ねるなら掲示板も良いだろうけど本の体系的な説明のほうが全体としては良い説明になってるはずだよ。
2026/08/14(金) 23:16:13.50ID:A9d+qFaE0
おすすめ「苦しんで覚えるC言語」
サイトもあるけど、やっぱり本じゃないとね
古い本だから今更新品の本を買う必要なし、アマゾンで中古本をポチればいいよ
2026/08/14(金) 23:45:48.71ID:psnt77tf0
電子書籍で良いのでは
2026/08/15(土) 01:05:25.19ID:AdrCUUhP0
> おすすめ「苦しんで覚えるC言語」

サイト見たけど間違い結構あるなw
740デフォルトの名無しさん (ワッチョイ 3316-Rd74)
垢版 |
2026/08/15(土) 01:39:47.95ID:3eHbAMFe0
Geminiのガイド付き学習でインタラクティブに学習できるよ
そういう時代
2026/08/15(土) 07:47:55.99ID:Wxt72Cnl0
質問が見当はずれだと回答もよくわからん。
Gemini に手伝ってもらうにしてもベースとしてはちょっとした入門書はあったほうが良い。
2026/08/15(土) 09:06:14.48ID:GGQ2s86t0
ちょっとした入門の、
範囲が知りたいんだが
2026/08/15(土) 10:55:07.00ID:AdrCUUhP0
> ちょっとした入門の、範囲

未定義動作を正確な知識により踏まなくなる程度
2026/08/15(土) 10:59:52.53ID:mirUALuA0
Z知能にCは無理
Rust知能にもCは無理
2026/08/15(土) 11:04:02.85ID:GGQ2s86t0
殆どの人はそれで十分だと思うよな
2026/08/15(土) 11:24:16.96ID:Wxt72Cnl0
私が入門したのは何十年も前の話だから……その頃の感覚で言われても困るだろう。
C に入門するより先に機械語をいじっていたタイプの学習ルートを経ていて、私の同世代は少なからずそんなものだが明らかに現代的な学習ルートではない。

そんで分かってしまうといまさら入門書を見て良し悪しの評価なんかできない。
説明に間違いがあれば指摘はできるけど分かり易さは別の話だし、方便として多少の不正確さを許容したほうが良い場合もあるし。
おそらく入門書は教育者が実際に教育に使いながらフィードバックを重ねたものが良いものになるんじゃないかと思う。
2026/08/15(土) 17:28:19.72ID:GGQ2s86t0
す自動変数
2026/08/15(土) 17:29:53.06ID:GGQ2s86t0
すまん
自動変数を一杯宣言し過ぎてスタック破壊した経験ってないですか?
2026/08/15(土) 18:09:54.17ID:mirUALuA0
>>746
> 教育者が実際に教育に使いながらフィードバックを重ねたもの
=大学の講義資料だろ
今ならStanfordやMITや東大からそこらの駅弁まで手に入る
2026/08/15(土) 18:13:40.05ID:mirUALuA0
>>748
コンパイル時に指定すればスタックサイズを増量できる
2026/08/15(土) 18:33:03.44ID:Wxt72Cnl0
>>750
Windows だとスタックの上限は実行ファイル内に格納されるパラメータだからコンパイル時の指定で変えられるけど現代的 OS の一般論としては OS の側の設定値として持っているのが普通だと思う。
少なくとも Linux や BSD だとそうなってる。
2026/08/15(土) 18:51:17.00ID:vxBg0KLF0
普通はヒープ使うからなぁ
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
2026/08/15(土) 20:03:09.70ID:DGyWizKz0
>>748
スタック領域の理解がない頃に謎の不具合として闘っていた可能性はある
大きな配列をmainに定義するとなぜか動かないとか、しかしグローバル変数にするとなぜか動くとか
2026/08/15(土) 20:40:50.03ID:PdMcshzj0
>>755
さう、それです。
元々FORTRANで書かれていたプログラムを移植してました。
各ロジックの移植までは良かったんですが、
配列宣言が関数内に複数個、それぞれ要素数が数万個ありました。
最終的にヒープに取ることにしましたが、あまり納得はできなかったです。
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からの移植時に」とお前が最初から言えば回避出来た話だろ。
2026/08/15(土) 23:22:33.88ID:mirUALuA0
>>751
> 現代的 OS の一般論としては OS の側の設定値として持っているのが普通
Linuxではulimit -s で変えられるらしいが、どっちが「普通」かには異議ありだな。

そもそもそのプログラムがスタックを大量に消費することはプログラマしか知らない。
だからコンパイル時にマークしておく必要があり、その上で、
システム側で許容された値以下なら許可する、という方式が正しいだろ。
Linux方式だと、エラーになったらその都度対応してくれ、ただどれくらい必要なのかは知らん、というマヌケな事を強制する仕様ではないか。
exeに明記されてれば、少なくとも、静的に大量確保される場合は完全に対応できる。今回もそうだろ。
Windowsの仕様のほうが「普通」で「正しい」と俺は思うね。(よりマシな仕様)
2026/08/15(土) 23:43:09.22ID:PdMcshzj0
>>757
今のところ、科学技術関連のソフトウェア資産はFORTRANの方が多いし、
研究者が書くプログラムも殆どがFORTRANだよ
2026/08/15(土) 23:59:34.06ID:mirUALuA0
>>759
お前が頭おかしいのは分かった
2026/08/18(火) 11:51:13.26ID:9hHWpynz0
>>757
>Cのグローバルはファイル内スコープであり、externしなければ他ファイルからも見えないので、
ファイルを分けておけば他とも被らない。
ここで判断すればオケ
2026/08/18(火) 13:47:12.21ID:DGdHd5vj0
>>761
引用されるまで気にしなかったけど
ファイル内スコープ(内部結合)にしたければstaticを付けてください
staticを付けない広域変数はextern参照されなくても外部結合なので、複数のファイルで同名の定義を行うと多重定義となってリンクができない
2026/08/18(火) 14:11:12.85ID:6VzK0iZS0
> Cのグローバルはファイル内スコープであり、externしなければ他ファイルからも見えないので、

初期化子を書かない仮定義かなんかを誤解してる希ガス
2026/08/19(水) 19:13:07.84ID:n/MO8lqQ0
2000年頃にやったプロジェクトでC/C++対応ヘッダに
Cコンパイラでは
int c;

C++コンパイラでは
extern int c;

となるように書かれてたな。
2026/08/19(水) 19:27:44.40ID:qcCLYMYl0
>>764
Cの場合、そのヘッダーを複数Cソースでインクルードするのはまずくないですか?
2026/08/20(木) 00:06:05.34ID:yH1eBXMA0
>>765
なんかまずいことあるんですか?
https://wandbox.org/permlink/Yr1oe28UFqBSu0hh
2026/08/20(木) 00:42:56.77ID:CPgDHYkC0
#ifdefの類いを使わないでやってみて
2026/08/20(木) 01:04:18.42ID:yH1eBXMA0
> #ifdefの類いを使わないでやってみて

こうですか?
https://wandbox.org/permlink/EskOFaZWlK4yeyFe
2026/08/20(木) 09:27:10.45ID:m8+NKV8o0
普通はヘッダファイルにゃ変数宣言書かないやろ
2026/08/20(木) 09:46:05.97ID:dCI5hbwT0
> 普通はヘッダファイルにゃ変数宣言書かないやろ

じゃあこうかな
https://wandbox.org/permlink/rWNB2Zsj6Kft3dfP
2026/08/20(木) 10:22:40.44ID:zD9pzxQG0
変数を直接には公開しない (適当な関数を通じてのみアクセスする) のでヘッダに書くことはないという意味じゃないの?
2026/08/20(木) 10:28:03.86ID:kgpI2cAu0
>>770
構ってちゃん死ね
2026/08/20(木) 10:28:55.17ID:m8+NKV8o0
グローバル変数は限定的に使おうね
2026/08/20(木) 11:12:16.07ID:BHkIwETw0
>>770
>>762を書いた者ですが、コード内容を調べ、書き方次第で多重定義エラーにはならない事が分かりました。誤情報を書いてしまい失礼しました

C言語では「int c;」と書いた場合は外部変数定義のように見えて実は仮定義という扱い、「int c = 0;」と書いた場合が定義扱いなのですね、、、
仮定義には、定義があればそれを参照できるように機能し(関数宣言に近い動作ですね)、定義がなければ仮定義をもって具象化行う働きがあるのですね

一方C++はODRの厳格化を進めたことによりルールが変わっているようで、私はそれと混同していました
775デフォルトの名無しさん (ワッチョイ 3b1d-lvmO)
垢版 |
2026/08/20(木) 21:10:42.59ID:kgpI2cAu0
>>774
お前も混乱を増長させるな
コンパイラのバージョンを確認してみろ、ゆとりZがよくやる手口だ
776デフォルトの名無しさん (ワッチョイ 7b11-5409)
垢版 |
2026/08/20(木) 21:43:00.84ID:i6ZZ94rn0
$ gcc --version
bash: gcc: command not found
2026/08/21(金) 00:13:07.48ID:Al7ii6Hx0
> コンパイラのバージョンを確認してみろ、ゆとりZがよくやる手口だ

gccのバージョンを新しくしろと言ってるのかな?
https://wandbox.org/permlink/lSFKJiRf1Yr0CX0Y
2026/08/21(金) 07:26:26.19ID:CECVtSfB0
>>775
私の言葉ではかえって混乱を生むかもしれませんのでソースを貼っておきます

https://ja.cppreference.com/c/language/extern

検索には「C言語 Tentative definitions」等も有効です。
C89の頃から存在する挙動、C99で明文化されたようです。
2026/08/21(金) 09:48:24.48ID:uvkfqT3C0
変数と関数で、宣言、定義のルールなんか変わるかな?
2026/08/21(金) 11:43:11.89ID:AhdeXR/60
つい最近に仮定義の話題をどこかで見た覚えがあると思って記憶をたどると Qiita に記事があった。
https://qiita.com/TETSURO1999/items/649b033975583750ad20

C と C++ は世間で思われているよりも多くの非互換をかかえていて、表面上の構文が同じにもかかわらず挙動が違うなんてのは割とある。
C++ に慣れていると C の inline の挙動にびっくりしたりする。
2026/08/22(土) 14:24:52.63ID:0spK21pd0
非互換と言うより別物と捉えた方が良いと思う
2026/08/22(土) 14:55:18.96ID:WaWOHyUHp
でもC++のコンパイラでCもコンパイルできちゃうからなぁ
2026/08/22(土) 17:26:28.71ID:wRPI5YNT0
C と C++ がそれぞれ独立した規格なのは確かなんだけど離れすぎないように配慮はしているんだよ。
配慮した上でこれ。
まあ C の変なところを C++ でもやれとは言えないし、 C はその性質から保守的なのも仕方なくはある。
2026/08/22(土) 18:24:32.93ID:vSvQUPjx0
VC++でC++ソースをコンパイルしたらエラー出て、なんでかなぁと思ったら拡張子が.cだった初心者時代・・・。
2026/08/22(土) 19:23:46.18ID:KuP4v0RE0
C の宣言の文法があまりにひどいので C++ で変えるべきかどうか迷ったという話が D&E に載ってる。
結果的には C を踏襲することにしたけど、変える決断をしていたらかなり大きくプログラミング言語史が違っていたかもしれないな。
2026/08/22(土) 19:38:53.23ID:0spK21pd0
C++の良いところは
取り込んでいっても良いと思います。
オプションで良いです。
2026/08/22(土) 19:57:16.05ID:AkkA9mWX0
>>786
今のgccは互換を保つためのオプショナルのようですね。
-fno-common が規定値
-fcommon は>>777のように指定が必要
788デフォルトの名無しさん (ワッチョイ 6240-orZZ)
垢版 |
2026/08/24(月) 14:10:32.52ID:FITgzI9F0
>>780
>C++ に慣れていると C の inline の挙動にびっくり
ほんそれ
2026/08/24(月) 23:37:56.91ID:8mRZRlF20
なれようず
790デフォルトの名無しさん (ワッチョイ be02-zKTv)
垢版 |
2026/08/29(土) 08:03:26.01ID:zX5LHgzm0
C標準も見た目だけC++に寄せてくるしなー
2026/09/01(火) 00:14:06.47ID:IXFRdCkda
秋来ぬと
目にはさやかに
見えねども
風の音にぞ
おどろかれNULLポ
2026/09/01(火) 01:08:57.37ID:Sd0IuuhS0
そよぐとも目には見えねど白露の宿れる草に秋は来にガッ
793デフォルトの名無しさん (ワッチョイ c5d6-m9W0)
垢版 |
2026/09/11(金) 21:38:32.92ID:m9pRTv5n0
C言語の内容とは関係ないんだけど、古い入門書の「まえがき」に、
「言語とは、筆者が言っていることを理解し、読者が筆者の言わんとすることを理解しようとすれば、その役割を果たす。」
みたいな事を書いていた書籍のタイトルと著者がわかる人おる?
2026/09/11(金) 22:03:45.31ID:IoXK5YWS0
お探しの書籍は、林晴比古(はやし はるひこ)氏による著作『C言語入門』(ソフトバンククリエイティブ/ソフトバンク出版)シリーズである可能性が極めて高いです。
林晴比古氏のプログラミング入門書(『C言語入門』や『BASIC入門』など)の「まえがき」には、プログラミング言語の本質をコミュニケーション(意思伝達)になぞらえた印象的な記述があり、以下のような趣旨の文言が記されています。
「言語とは、話者が言いたいことを表現し、聞く側(読者)がその言わんとすることを理解しようとすれば、それで十分にその役割を果たすものである。」
(※プログラミング言語も同様に、文法に捉われすぎず『コンピュータに何をさせたいか』という意図を伝えることが本質である、という文脈で語られています)

該当する可能性が高い書籍
書籍名: 『明解 C言語 入門編』または『新・C言語入門 シリーズ』(旧・『C言語入門』)
著者: 林 晴比古(はやし はるひこ)
出版社: ソフトバンク(SoftBank Creative)

著者の特徴と文脈
林晴比古氏は1980年代〜1990年代にかけて数多くのC言語やPascal、BASICなどの入門書を執筆されたPC黎明期のベストセラー著者です。
同氏の入門書の「まえがき」や「はじめに」では、次のような哲学が繰り返し語られていました。
単なる文法チェックや構文暗記に囚われないこと
「人間とコンピュータ(あるいは筆者と読者)」の間で意図や論理が正しく伝わることこそが「言語」の本質であること
もし昔読まれたC言語の緑色や青色の表紙の入門書(ソフトバンク刊)であれば、林晴比古氏の書籍で間違いありません。一度表紙や著者名に見覚えがないか確認してみてください。
795デフォルトの名無しさん (ワッチョイ ae14-D25p)
垢版 |
2026/09/11(金) 22:41:11.64ID:rSkwma7r0
AIの答えか
つまりAIは書籍を学習してると
2026/09/11(金) 23:50:37.30ID:q5rznS1p0
林晴比古とか三田典玄とか昔の評判悪かった著者懐かしいな
レスを投稿する


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