!extend:checked:vvvvv:1000:512
(新スレ立ての際上記コマンドを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言語なら俺に聞け 160
https://mevius.5ch.net/test/read.cgi/tech/1672191630/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
C言語なら俺に聞け 161
レス数が950を超えています。1000を超えると書き込みができなくなります。
1デフォルトの名無しさん (ワッチョイ 0f63-sFbk)
2023/04/21(金) 14:05:20.18ID:rqj2HSDF0883デフォルトの名無しさん (ワッチョイ 7b27-S8Dy)
2023/10/14(土) 12:58:59.76ID:FvSW4+JI0 3回shutdownは初めて聞いた
3回syncのことかな?
1回目が依頼、2回目が実行、3回目は祈り・・・
3回syncのことかな?
1回目が依頼、2回目が実行、3回目は祈り・・・
884デフォルトの名無しさん (ワッチョイ 13ad-62ca)
2023/10/14(土) 23:20:34.47ID:BgrcFKKf0 2回以上連続syncはやったことないなあ
885881 (ワッチョイ d1e0-VGqS)
2023/10/15(日) 00:37:55.29ID:1GgH9uvV0 スマン。3回shutdown じゃないわ。
3回sync だった
Windows は高速スタートアップがあるから、
shutdownはメモリの内容をSSD に保持するから、復元されてしまうので、
再起動するのが正解らしい
3回sync だった
Windows は高速スタートアップがあるから、
shutdownはメモリの内容をSSD に保持するから、復元されてしまうので、
再起動するのが正解らしい
886デフォルトの名無しさん (ワッチョイ c925-+xaX)
2023/10/15(日) 06:23:13.62ID:RYkKDVjT0 説明がヘタで何言ってるのかわからんが
このスレッドのテーマと関係ないだろ他でやれ
このスレッドのテーマと関係ないだろ他でやれ
887デフォルトの名無しさん (ワッチョイ 1336-8seT)
2023/10/15(日) 21:52:14.34ID:nkdZTM470 一回目の sync に時間がかかるとその間にメモリの書き換えが起きてしまう可能性があるから、二度目の sync をする。ふつうはそこで満足する。どうしても心配ならもう一度 sync するわけだけど、そこまで心配なら別の方法を考えた方がいい。
888デフォルトの名無しさん (ワッチョイ 1379-3b5p)
2023/10/15(日) 21:54:23.57ID:WV6g/2dS0 888888888888888888888888888888888888888
888888う8888888888ん88888888888888888こ88
888888888888888888888888888888888888888
888888う8888888888ん88888888888888888こ88
888888888888888888888888888888888888888
889デフォルトの名無しさん (アウアウウー Sadd-f0fU)
2023/10/16(月) 10:05:31.11ID:kgcCjrnKa CでWindowsのデバドラ描くなら
shutdownが高速スタートアップかそうじゃないかは重要じゃないか
cmd 起動して shutdown -s -t 0 をよくやる
これだけじゃなくて hybernate をあらかじめ off にしておく必要もある
powercfg.exe /hibernate
shutdownが高速スタートアップかそうじゃないかは重要じゃないか
cmd 起動して shutdown -s -t 0 をよくやる
これだけじゃなくて hybernate をあらかじめ off にしておく必要もある
powercfg.exe /hibernate
890デフォルトの名無しさん (ワッチョイ 29b7-S8Dy)
2023/10/17(火) 10:35:23.04ID:QQA0GvA50891デフォルトの名無しさん (ワッチョイ 8b63-iZeJ)
2023/10/17(火) 10:47:53.72ID:+MFXb2Fe0 祈りは聞き届けられました!
892デフォルトの名無しさん (ワッチョイ 9397-Rw6a)
2023/10/17(火) 12:31:38.91ID:y7v373yJ0 三菱UFJ銀行など10金融機関で約250万件の送金が滞った全国銀行データ通信システム(全銀システム)の障害は、各金融機関と同システムをつなぐ機器の容量(メモリー)不足が要因だったことがわかった。機器の更新で処理量が増え、想定の容量を超えてパンクした。事前のテストが不十分だった可能性もあり、検証が求められる。
893デフォルトの名無しさん (ワッチョイ 9397-Rw6a)
2023/10/17(火) 12:35:48.82ID:y7v373yJ0 記事読んでると、素人が作ったのかと思うほど粗雑に感じるが、
単に記事を書いた記者が素人だからかもしれない。
単に記事を書いた記者が素人だからかもしれない。
894デフォルトの名無しさん (ワントンキン MM4b-ELGK)
2023/10/17(火) 13:14:23.15ID:XZGXsIC3M またスレチかよわざとやってんのか?w
895デフォルトの名無しさん (アウアウウー Sadd-f0fU)
2023/10/17(火) 14:30:57.88ID:vCPpyEw2a ルーターのNATテーブルが貧弱で
定期的に再起動しないといけないルーターがあったのを思い出した
定期的に再起動しないといけないルーターがあったのを思い出した
896デフォルトの名無しさん (ワッチョイ 0bc2-T9H3)
2023/10/20(金) 15:45:46.46ID:Ipe4ElpV0 それなんてcorega?
ってフレーズも懐かしい・・・。
ってフレーズも懐かしい・・・。
897デフォルトの名無しさん (ワッチョイ e95f-pCU2)
2023/10/20(金) 15:48:07.37ID:v1uIJG0f0 最近じゃ組み込み系もPythonになってるらしいな
898デフォルトの名無しさん (ワッチョイ 13ad-62ca)
2023/10/20(金) 18:19:30.36ID:Zfs7dH680 初耳だ
899デフォルトの名無しさん (ワッチョイ 13ad-62ca)
2023/10/20(金) 18:19:46.73ID:Zfs7dH680 初耳だ
900デフォルトの名無しさん (ラクッペペ MMeb-BOBA)
2023/10/20(金) 19:00:07.60ID:OBgHVD6WM ArduinoとかはまだC/C++が使われているけどRaspberryPiあたりではPythonが使われている
901デフォルトの名無しさん (ワッチョイ c134-eijK)
2023/10/20(金) 20:37:45.65ID:iiycX8pJ0 ラズパイが組み込みって言われてもなぁ
902デフォルトの名無しさん (ワッチョイ 8b63-iZeJ)
2023/10/20(金) 20:52:13.36ID:WNS0tsmN0 コンパクトなバイナリーが作れるんだろうか
それともライブラリーが別途必要?
それともライブラリーが別途必要?
903デフォルトの名無しさん (ワッチョイ 2bb6-AzOG)
2023/10/20(金) 22:48:36.74ID:gDJgEYng0 Cでつくったもので自慢のものある?
904デフォルトの名無しさん (ワッチョイ ddf0-5RLD)
2023/10/21(土) 12:56:21.39ID:Auba50wB0 ラズパイの話するならPicoか否か書けよ
905デフォルトの名無しさん (ワッチョイ 7a79-Idv/)
2023/10/21(土) 13:34:03.99ID:ifbOBJO10 ラズパイの話するな
906デフォルトの名無しさん (ワッチョイ 1934-egvn)
2023/10/21(土) 13:40:58.48ID:m23W7dra0907デフォルトの名無しさん (ワントンキン MM8a-xqvO)
2023/10/21(土) 21:29:19.14ID:t2gg/cweM 作ったものは数々あるが、
自慢できるものはない
自慢できるものはない
908デフォルトの名無しさん (ワッチョイ 9946-5z4m)
2023/10/21(土) 22:19:05.57ID:9n8k9yEZ0 恥の多いプログラムを作って来ました。
909デフォルトの名無しさん (アウアウウー Sa09-6i8i)
2023/10/22(日) 11:30:49.85ID:GXjFDCr1a そもそも業務で造ったものは守秘義務あるからな
910デフォルトの名無しさん (ワッチョイ 7a79-Idv/)
2023/10/22(日) 12:04:50.59ID:7Lbl94Rb0 >>908
プログラマー失格やな!
プログラマー失格やな!
911デフォルトの名無しさん (ワッチョイ d663-iKuA)
2023/10/22(日) 12:08:40.64ID:+M4dXZ790 作っていて、恥ずかしさを感じないとすれば、それこそ失格だ
人は失敗の中から多くを学ぶ
人は失敗の中から多くを学ぶ
912デフォルトの名無しさん (スッップ Sd9a-ilqh)
2023/10/22(日) 12:41:16.58ID:WtUZjflvd 恥とかそんなのとは違う
ビジネスとはスピードと品質のトレードオフ
そのバランスを考えられないのがプロとして恥
ビジネスとはスピードと品質のトレードオフ
そのバランスを考えられないのがプロとして恥
913デフォルトの名無しさん (ワッチョイ dd14-PKJr)
2023/10/22(日) 12:41:36.43ID:DsuvifSY0914デフォルトの名無しさん (ワッチョイ 7aad-CfcT)
2023/10/22(日) 13:27:44.71ID:lT9uYjte0915デフォルトの名無しさん (ワッチョイ 7a79-Idv/)
2023/10/22(日) 13:30:41.44ID:7Lbl94Rb0 自分で調べろよそれぐらい…お前もプログラマー失格やな!
916デフォルトの名無しさん (ワッチョイ 5d01-iKuA)
2023/10/22(日) 19:09:03.13ID:1z8BeiKk0 生まれてすみません
917デフォルトの名無しさん (ワッチョイ d663-iKuA)
2023/10/22(日) 19:19:12.31ID:+M4dXZ790 いいってことよ
918デフォルトの名無しさん (ワイーワ2 FF62-6i8i)
2023/10/24(火) 16:01:52.72ID:ju9L4gE1F おかえり
919デフォルトの名無しさん (ワッチョイ ba7c-Habm)
2023/10/26(木) 00:49:54.03ID:89nTklyv0 C23でC11ぶりに更新ってC標準化委員会(?)だかはサボり過ぎじゃねーか。
C++なみとは言わんが5年ぐらいごとに見直せや。
nullptrとか入るの遅過ぎる。
deferも無いとかアホすぎる。
C++なみとは言わんが5年ぐらいごとに見直せや。
nullptrとか入るの遅過ぎる。
deferも無いとかアホすぎる。
920デフォルトの名無しさん (ワッチョイ 7a79-Idv/)
2023/10/26(木) 02:57:54.97ID:q3UKhsX80 いつまでも未完成のサグラダファミリアみたいなC++とは違ってCは生まれた時から完成してるから
後々機能追加したところでそいつの自己満でしかない
未完成のC++から逆輸入されて良かったことなんて行コメント程度しかない
後々機能追加したところでそいつの自己満でしかない
未完成のC++から逆輸入されて良かったことなんて行コメント程度しかない
921デフォルトの名無しさん (スフッ Sd9a-dytz)
2023/10/26(木) 08:37:00.27ID:FkoAeS+Vd コンパイラがC11のgets_s()関数に対応してないんですが、どうすればいいですか?
922デフォルトの名無しさん (スフッ Sd9a-dytz)
2023/10/26(木) 08:37:12.14ID:FkoAeS+Vd コンパイラがC11のgets_s()関数に対応してないんですが、どうすればいいですか?
923デフォルトの名無しさん (ワッチョイ dd14-PKJr)
2023/10/26(木) 09:02:33.67ID:nJ6kaeWr0 あきら🍈
924デフォルトの名無しさん (スフッ Sd9a-9f78)
2023/10/26(木) 09:08:02.65ID:FkoAeS+Vd >>923 あきらめてvisual studioでgets_s()関数を使えていますが、vscodeの普段使っているコンパイラでは
使えません
使えません
925デフォルトの名無しさん (スフッ Sd9a-9f78)
2023/10/26(木) 09:08:14.78ID:FkoAeS+Vd >>923 あきらめてvisual studioでgets_s()関数を使えていますが、vscodeの普段使っているコンパイラでは
使えません
使えません
926はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 8e3e-exru)
2023/10/26(木) 09:11:27.20ID:oN20rU1J0 自分で書いたってそんなに時間はかからんだろう。
行がバッファより長いときや引数が条件を満たさないときに
制約ハンドラを呼ぶってだけだぞ。
行がバッファより長いときや引数が条件を満たさないときに
制約ハンドラを呼ぶってだけだぞ。
927デフォルトの名無しさん (スフッ Sd9a-9f78)
2023/10/26(木) 09:13:48.45ID:FkoAeS+Vd >>926 結局gets()関数の代用はfgets()しかないというこですね
928デフォルトの名無しさん (ワッチョイ d663-iKuA)
2023/10/26(木) 09:38:07.39ID:G4ruVh0t0 自分で作れよ
Cってそういうもんだ
Cってそういうもんだ
929デフォルトの名無しさん (スフッ Sd9a-9f78)
2023/10/26(木) 10:11:10.35ID:FkoAeS+Vd >>928 自分で書きました
930デフォルトの名無しさん (スッップ Sd9a-Habm)
2023/10/26(木) 11:50:48.14ID:ZES507rzd >>920
そんなんだからリーナスだってぶち切れるんだぞ。
そんなんだからリーナスだってぶち切れるんだぞ。
931デフォルトの名無しさん (スッップ Sd9a-SL8W)
2023/10/26(木) 13:16:49.71ID:62xlwgird winでguiアプリ作る時とかCランタイムなんて全く使わないでしよ
今更Cで作るかは置いといて
今更Cで作るかは置いといて
932デフォルトの名無しさん (ワッチョイ f969-Dq0e)
2023/10/26(木) 13:20:48.32ID:S8nCpIo20 (σ・∀・)σゲッツ!!
933デフォルトの名無しさん (ワッチョイ d6ab-OCAv)
2023/10/26(木) 14:24:42.99ID:Qn92XRBA0 文字列周りのあれこれは Cランタイムのお世話も併用することが
934デフォルトの名無しさん (スフッ Sd9a-Cy5w)
2023/10/26(木) 15:12:00.43ID:ES29OdTad TCHAR無視でASCIIzしか使わないならいけるかな
memcpyとかmallicとかも普通に使えるしな
TCHARのUNICODE版の文字列処理ってもうCランタイムと言うのは無理ありそう
末尾にに_s付いたのとか先頭にl付いたのとか
もう亜種増え過ぎで覚えられんくなった
あれはCランタイムじゃなくてwin32apiだわ
memcpyとかmallicとかも普通に使えるしな
TCHARのUNICODE版の文字列処理ってもうCランタイムと言うのは無理ありそう
末尾にに_s付いたのとか先頭にl付いたのとか
もう亜種増え過ぎで覚えられんくなった
あれはCランタイムじゃなくてwin32apiだわ
935デフォルトの名無しさん (ワッチョイ 8e5f-ANn9)
2023/10/26(木) 17:56:31.84ID:SEjxiCyL0 C言語でGC実装したライブラリあったよね
あれって今でも使われてんの?
あれって今でも使われてんの?
937デフォルトの名無しさん (ワッチョイ 8e5f-ANn9)
2023/10/26(木) 21:04:51.64ID:SEjxiCyL0938デフォルトの名無しさん (ワッチョイ f969-Dq0e)
2023/10/26(木) 23:37:41.65ID:S8nCpIo20 Boehm GC使ってるぞ
つうかUnityのランタイムはBoehm GCが使われてる
つうかUnityのランタイムはBoehm GCが使われてる
939デフォルトの名無しさん (ワッチョイ f969-Dq0e)
2023/10/26(木) 23:41:25.14ID:S8nCpIo20 Unity使ってるゲームはごまんとあるけど、敢えてGCを切ってるゲームも中には有るかも知れんが、ほとんどのゲームは裏でBoehm GCが動いている
要するに知らないだけで、Boehm GCはメチャクチャ使われてる
無知は罪だなw
要するに知らないだけで、Boehm GCはメチャクチャ使われてる
無知は罪だなw
940デフォルトの名無しさん (ワッチョイ f969-Dq0e)
2023/10/26(木) 23:50:27.25ID:S8nCpIo20 > ほとんどのゲーム
ほとんどのUnity使ったゲームでだな
それと最近UnityのBoehm GCにインクリメンタルGCが追加された
それまではStop The World(STW)のインパクトが凄くて、みんな最後にはなるべくGCが発生しないようにするチューニングが待っていたw
ほとんどのUnity使ったゲームでだな
それと最近UnityのBoehm GCにインクリメンタルGCが追加された
それまではStop The World(STW)のインパクトが凄くて、みんな最後にはなるべくGCが発生しないようにするチューニングが待っていたw
941はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 8e3e-+JM7)
2023/10/27(金) 00:08:08.21ID:heVGcbpM0 Boehm GC はマシンスタックも走査するようなデザインだからアーキテクチャに依存する部分がいっぱいあるし、メンテナンスもし続けないとすぐ実情にあわなくなって破綻すると思う。
逆に言えば採用されてちゃんと動いているのはちゃんとメンテナンスされてるからだろう。
それなりに活発に利用も開発もされてると言えるんじゃないか。
プログラミング言語処理系のいくつかで採用事例を見たことはある。
逆に言えば採用されてちゃんと動いているのはちゃんとメンテナンスされてるからだろう。
それなりに活発に利用も開発もされてると言えるんじゃないか。
プログラミング言語処理系のいくつかで採用事例を見たことはある。
942デフォルトの名無しさん (ワッチョイ f969-Dq0e)
2023/10/27(金) 00:26:28.28ID:u2CdPYGW0 今も活発に開発されてるよ
まぁリリースは半年とか年一ぐらいだけどね
まぁリリースは半年とか年一ぐらいだけどね
943デフォルトの名無しさん (ワッチョイ cee7-ANn9)
2023/10/27(金) 11:18:26.71ID:dEbuX89/0 そうなのかUnityすげーな
そもそもUnityがC言語だったのも知らんかったわ
C言語でGUIなゲーム作れるならやってみるわ
ありがとう
そもそもUnityがC言語だったのも知らんかったわ
C言語でGUIなゲーム作れるならやってみるわ
ありがとう
944デフォルトの名無しさん (ワッチョイ cd10-JD/u)
2023/10/27(金) 11:33:41.42ID:9P66tx0i0 ゲームのMOD管理や改造ツール探してると結構間違ってソース配布ページへ飛ばされる。
ファイル拡張子が*.cなトコは無いにしても、*.cppなとこは多いね。
ファイル拡張子が*.cなトコは無いにしても、*.cppなとこは多いね。
945はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 8e3e-exru)
2023/10/27(金) 12:18:24.77ID:heVGcbpM0 >>943
dotNET が Unity の基礎にあるからユーザが使うレイヤでは C# が前提だよ。
ただ、それを実行するランタイムサポートの中には低レイヤ寄りの部分も当然あるし、
そこで Boehm GC が使われているって話。
C で書いたモジュールを呼び出すことは出来るんだけど…。
「C でゲームを作る」のがやりたいなら Unity は全然向いてない。
dotNET が Unity の基礎にあるからユーザが使うレイヤでは C# が前提だよ。
ただ、それを実行するランタイムサポートの中には低レイヤ寄りの部分も当然あるし、
そこで Boehm GC が使われているって話。
C で書いたモジュールを呼び出すことは出来るんだけど…。
「C でゲームを作る」のがやりたいなら Unity は全然向いてない。
946デフォルトの名無しさん (ワッチョイ ddf4-U54k)
2023/10/27(金) 12:22:07.63ID:gE38RsN70 そもそもC言語でGUIゲーム作れるじゃんUnityじゃなくても
947デフォルトの名無しさん (ワッチョイ fade-UUkb)
2023/10/27(金) 13:36:32.37ID:DWeOppJn0 公開して
948デフォルトの名無しさん (ワッチョイ 999f-dytz)
2023/10/27(金) 13:59:41.03ID:CZ4Htjtu0 後悔しました
949デフォルトの名無しさん (ワッチョイ 7aad-iKuA)
2023/10/27(金) 15:35:27.52ID:sXR1+sXw0 航海します
950デフォルトの名無しさん (ワッチョイ c18f-BTDU)
2023/10/27(金) 21:03:53.47ID:nBxrDXuS0 Cでゲームかぁ
面倒くさそう
面倒くさそう
951デフォルトの名無しさん (ワッチョイ d663-iKuA)
2023/10/27(金) 21:16:42.74ID:qIG6QpEs0 Cじゃなくてもめんどくさそうって言い出しそう
952デフォルトの名無しさん (ワッチョイ dd14-PKJr)
2023/10/27(金) 21:30:02.47ID:t+LCPq2M0 Windowsのクロンダイク作ろうぜ
あれならもともとCのはず
あれならもともとCのはず
953デフォルトの名無しさん (ワッチョイ d663-iKuA)
2023/10/27(金) 21:37:13.50ID:qIG6QpEs0 MS-DOSの頃はアマチュアの作ったゲームがたくさんあったな
ゲームメーカーの商品より優秀なのもあったし、
メーカーから訴えられた個人もいたな。
メーカー側が取り下げた様だが、
もしかしたら訴えた事実がなかったかも知れない
その後倒産したという噂を聞いた
Windowsになってからは、VBで作る人が多かった
ゲームメーカーの商品より優秀なのもあったし、
メーカーから訴えられた個人もいたな。
メーカー側が取り下げた様だが、
もしかしたら訴えた事実がなかったかも知れない
その後倒産したという噂を聞いた
Windowsになってからは、VBで作る人が多かった
954はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 8e3e-exru)
2023/10/27(金) 21:44:44.21ID:heVGcbpM0 アマチュアが作っているゲーム作品の数で言えば今のほうがずっと多いと思うが。
955デフォルトの名無しさん (ワッチョイ d663-iKuA)
2023/10/27(金) 22:25:12.50ID:qIG6QpEs0 そうなのか・・・
最近はゲームしてないので知らないんだw
最近はゲームしてないので知らないんだw
956デフォルトの名無しさん (ワッチョイ 7a79-Idv/)
2023/10/27(金) 22:28:08.93ID:M9GgCmOO0 今はvやutuberに媚びたゲーム作れば配信で遊んでくれるから一気にプレイヤー数も増えるよ
957デフォルトの名無しさん (ワッチョイ 81f4-WJPr)
2023/10/28(土) 11:42:50.19ID:vcHM6tqr0 >>953
すっごい適当なことばっかり言うねw
すっごい適当なことばっかり言うねw
958デフォルトの名無しさん (ワッチョイ 5359-g3nS)
2023/10/28(土) 12:43:38.00ID:p7wdBTPe0 >>957
Bio_100%とかタカリスなんて知らないせだいなんだろうな
Bio_100%とかタカリスなんて知らないせだいなんだろうな
959デフォルトの名無しさん (ワッチョイ 199f-CP9B)
2023/10/28(土) 13:20:46.38ID:CS7+IID10 ゲームエンジンもライブラリもろくになかった時代にC言語とアセンブラを駆使して
高レベルなゲームを作れるアマチュアプログラマがたくさんいた
(Unityで作るより高スキルが求められる)という話であって、
アマチュア/インディーズゲームのリリース数が論点というわけじゃないんじゃね?w
高レベルなゲームを作れるアマチュアプログラマがたくさんいた
(Unityで作るより高スキルが求められる)という話であって、
アマチュア/インディーズゲームのリリース数が論点というわけじゃないんじゃね?w
960デフォルトの名無しさん (ワッチョイ 215f-H9h+)
2023/10/28(土) 13:35:13.59ID:t5G+utQT0 1997年あたりにワイヤフレームだけどゴリゴリの3Dで8台で競艇するゲームは当時かなりオーパーツ感あった
波でグラグラゆれたり、あの当時でステージメイキングも確か出来たし、誰か知ってる人おらんじゃろうか
波でグラグラゆれたり、あの当時でステージメイキングも確か出来たし、誰か知ってる人おらんじゃろうか
961デフォルトの名無しさん (ワッチョイ 5351-zW/F)
2023/10/28(土) 14:14:38.32ID:wcF/YB9E0 よそできけよ
962デフォルトの名無しさん (ワッチョイ 937c-cQ99)
2023/10/29(日) 00:56:56.68ID:GrwAVmld0 C言語標準規格、せめて5年毎ぐらいに見直してくれればなぁ。
そしたらとっくにnullptrは入ってただそうし。もしかしたら deferや lambdaも入ってたかもしれん。
そしたらとっくにnullptrは入ってただそうし。もしかしたら deferや lambdaも入ってたかもしれん。
963デフォルトの名無しさん (ワッチョイ 5351-zW/F)
2023/10/29(日) 08:16:14.69ID:d4XtWcMl0 規格に対してまあそういう考えの人がいるのも分かるが、全体としては改定に対しての需要というか声は小さかったってことでしょ
964デフォルトの名無しさん (ワッチョイ 1379-JwVi)
2023/10/29(日) 08:37:00.25ID:x+5RB5aB0 どれも今更すぎていらんわ
そういうの絶対必要って奴はとっくにC言語ではない何かを使ってるでしょ
そういうの絶対必要って奴はとっくにC言語ではない何かを使ってるでしょ
965はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 9b3e-g5YV)
2023/10/29(日) 09:22:00.09ID:C0ma4yse0 >>962
C17 がわずかな保守で終わってることから察しなよ。
見直した結果として変更が要らんという判断をしたんだ。
C に defer を入れる意味はない。
提案として出ている以上は欲しいと思う人もいるんだろうけど。
あれは panic とかがあっても後始末するというところが価値なので
そういうのがない C で関数の終わりに後始末したけりゃ関数の終わりに書けばいい。
例外処理も含めて入れるってのだとなおさら無理だと思うし。
いまさらランタイムを分厚くする方向の機能を言語コアに入れるのは賛成を得られるはずがなさそう。
ラムダ式はまだ可能性がなくもなさそうに思うが……
C++ のラムダ式は暗黙のクラス定義の構文糖として定義することで詳細な規定を
大幅に別項目に丸投げ出来ている。
C で理屈をきちんと整理するのはちょっと難しくない?
キャプチャを全く諦めるならあり得そう。
C17 がわずかな保守で終わってることから察しなよ。
見直した結果として変更が要らんという判断をしたんだ。
C に defer を入れる意味はない。
提案として出ている以上は欲しいと思う人もいるんだろうけど。
あれは panic とかがあっても後始末するというところが価値なので
そういうのがない C で関数の終わりに後始末したけりゃ関数の終わりに書けばいい。
例外処理も含めて入れるってのだとなおさら無理だと思うし。
いまさらランタイムを分厚くする方向の機能を言語コアに入れるのは賛成を得られるはずがなさそう。
ラムダ式はまだ可能性がなくもなさそうに思うが……
C++ のラムダ式は暗黙のクラス定義の構文糖として定義することで詳細な規定を
大幅に別項目に丸投げ出来ている。
C で理屈をきちんと整理するのはちょっと難しくない?
キャプチャを全く諦めるならあり得そう。
966デフォルトの名無しさん (ワッチョイ 9b5f-zW/F)
2023/10/29(日) 09:22:16.65ID:+KTUg2vO0 継続メンテナンスが必要なのはだいたいC89の頃のプロダクトだったりするので
C言語自体の規格アップデートはさほど必要とされていないのね
C言語自体の規格アップデートはさほど必要とされていないのね
967はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 9b3e-g5YV)
2023/10/29(日) 10:51:27.53ID:C0ma4yse0 モダンな機能が必要なら C++ を使えばいいって言えてしまうってのもあるしな。
C23 は刷新が大きいけど、新しい機能を入れるというよりは
あまりにも駄目すぎるところを (C++ の後追いをする形で) 改良するって感じだし。
C23 は刷新が大きいけど、新しい機能を入れるというよりは
あまりにも駄目すぎるところを (C++ の後追いをする形で) 改良するって感じだし。
C99 からの無名構造体は廃止してほしいねえ、あれでC++との互換が失われた。
構造体にコンストラクタを記述できるようにした方がマシだったと思う…
構造体にコンストラクタを記述できるようにした方がマシだったと思う…
C99 からの無名構造体は廃止してほしいねえ、あれでC++との互換が失われた。
構造体にコンストラクタを記述できるようにした方がマシだったと思う…
構造体にコンストラクタを記述できるようにした方がマシだったと思う…
970デフォルトの名無しさん (ワッチョイ eb63-c8RC)
2023/10/29(日) 15:24:11.31ID:V/yNBYFm0 コンストラクタ用意したら、それはもはやCではない
971はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 9b3e-g5YV)
2023/10/29(日) 16:10:21.42ID:C0ma4yse0972デフォルトの名無しさん (ワッチョイ 1379-JwVi)
2023/10/29(日) 17:23:22.94ID:x+5RB5aB0 >>968
Cでtypedef+無名構造体/共用体のペアはstruct tag書式より使われてると思うが
これはstructをいちいち書かされるC固有の仕様の問題であって、C++では最初から型宣言自体のやり方が違う
つまりCの仕様をC++に合わせる意味は無く、C++との互換性はどうでもいい
Cでtypedef+無名構造体/共用体のペアはstruct tag書式より使われてると思うが
これはstructをいちいち書かされるC固有の仕様の問題であって、C++では最初から型宣言自体のやり方が違う
つまりCの仕様をC++に合わせる意味は無く、C++との互換性はどうでもいい
973デフォルトの名無しさん (ワッチョイ d95d-kYJB)
2023/10/29(日) 22:25:46.25ID:ce2BuRgD0 >>965
例外の無いCでのdeferの意味は、単に後処理(デストラクタ)をコンストラクタ(Cではmallocや初期化関数)の直下に書けるという意味がある
関数の下に書けばいいといっても、gotoで飛ばしてんじゃ、プログラミング言語として欠陥が有ると思うよ
goto使うな→エラー処理で使えば綺麗に書けるよ!って、やっぱおかしいだろw
例外の無いCでのdeferの意味は、単に後処理(デストラクタ)をコンストラクタ(Cではmallocや初期化関数)の直下に書けるという意味がある
関数の下に書けばいいといっても、gotoで飛ばしてんじゃ、プログラミング言語として欠陥が有ると思うよ
goto使うな→エラー処理で使えば綺麗に書けるよ!って、やっぱおかしいだろw
974デフォルトの名無しさん (ワッチョイ 1989-FUJr)
2023/10/29(日) 23:50:43.25ID:eMkvRHiW0 defer って分からんのですが、関数単位での atexit() みたいなもの?
975デフォルトの名無しさん (ワッチョイ d95d-kYJB)
2023/10/30(月) 00:11:39.03ID:2SouKz/I0 double* q = malloc(something);
defer { free(q); }
↑これ見れば一目瞭然だな
exitと関数やブロックを抜ける時に発動する
けど、Cは書かれた通りに動くという前提を少し逸脱してんだよね
それでも絶対便利ではある
難しい問題だな
defer { free(q); }
↑これ見れば一目瞭然だな
exitと関数やブロックを抜ける時に発動する
けど、Cは書かれた通りに動くという前提を少し逸脱してんだよね
それでも絶対便利ではある
難しい問題だな
976デフォルトの名無しさん (ワッチョイ 1989-FUJr)
2023/10/30(月) 00:12:01.02ID:hHEGE8Ol0 合ってるよね、うん
それ(他言語の defer 相当機能)って、問題解決にC言語を採用する環境では、OS上のプロセスの切り出し単位の設計、にマッピングすれば済む事ではないのかな?
建設的な議論の参考ネタとして:
perl言語が嫌われた理由の一つに「同じ事をいろんな書き方で書ける」言語設計ポリシーがあって、それは他人が書いたコードをメンテする立場だと「あらゆる書き方に精通してないとメンテできない」デメリットになり
pythonはそれを反面教師として「同じ事はだいたいみんな同じ書き方になるような言語設計を目指す」ポリシーにした、と認識してます
それ(他言語の defer 相当機能)って、問題解決にC言語を採用する環境では、OS上のプロセスの切り出し単位の設計、にマッピングすれば済む事ではないのかな?
建設的な議論の参考ネタとして:
perl言語が嫌われた理由の一つに「同じ事をいろんな書き方で書ける」言語設計ポリシーがあって、それは他人が書いたコードをメンテする立場だと「あらゆる書き方に精通してないとメンテできない」デメリットになり
pythonはそれを反面教師として「同じ事はだいたいみんな同じ書き方になるような言語設計を目指す」ポリシーにした、と認識してます
977デフォルトの名無しさん (ワッチョイ 1989-FUJr)
2023/10/30(月) 00:33:24.74ID:hHEGE8Ol0 ああ、ブロック単位なのね…
とすると、上手なC言語のプログラマー達が習慣的にやってきた方法は以下ですよね:
■実装すべき処理を関数にマッピングするとき(主処理、失敗時処理を)細かく分ける
■関数をイベントハンドラとして「登録する」流儀の ミドルレイヤを書いて、そのミドルシステム上で 実装対象の「意味のある処理単位」を書くよう、プロジェクト単位でコーディングルールを定め、守り&守らせ
■◯◯失敗時には△△を行う、を明確に設計し実装して、それが分かりやすい納入プログラムとする
で解決してきた、と思います。
つまり defer 機能がなくても同じ事をやる手法は既に確立している。
前のレスでの主張と合わせ、defer 機能を追加しないのが正解、と言いたいです
とすると、上手なC言語のプログラマー達が習慣的にやってきた方法は以下ですよね:
■実装すべき処理を関数にマッピングするとき(主処理、失敗時処理を)細かく分ける
■関数をイベントハンドラとして「登録する」流儀の ミドルレイヤを書いて、そのミドルシステム上で 実装対象の「意味のある処理単位」を書くよう、プロジェクト単位でコーディングルールを定め、守り&守らせ
■◯◯失敗時には△△を行う、を明確に設計し実装して、それが分かりやすい納入プログラムとする
で解決してきた、と思います。
つまり defer 機能がなくても同じ事をやる手法は既に確立している。
前のレスでの主張と合わせ、defer 機能を追加しないのが正解、と言いたいです
978デフォルトの名無しさん (ワッチョイ 9b5f-zW/F)
2023/10/30(月) 01:02:35.88ID:tKZ3J0Lw0 breakでいつでもブロックを離脱できればgotoより明確でスムーズでかっこよくdeferっぽいことできるよな
979デフォルトの名無しさん (ワッチョイ 937c-cQ99)
2023/10/30(月) 01:09:19.67ID:SHIqNVOV0 かっこいいかなぁ、、、
980デフォルトの名無しさん (ワッチョイ 1989-FUJr)
2023/10/30(月) 01:25:52.81ID:hHEGE8Ol0 >>978
{int rc=0; do{ ★始め
処理
rc=1; break; ★失敗した
処理
break; ★成功した
} while(0); if(rc) { ★
異常時処理
}} ★終り
とかそういう話?
こういうのを #define で「エセ構文糖」みたいに定義する人もいますよね。(自分はあまり好きじゃない。格好悪いと思う)
C言語用の単体テストフレームワークで unity ってのがあります。unity ではテストコード内で 独自の try ~ catch 風文法を書けるのですが、それがまさに (setjmp longjmp も使って) #define でエセ構文糖風に実装してました。需要があれば再度調べてここで概要報告しますw
{int rc=0; do{ ★始め
処理
rc=1; break; ★失敗した
処理
break; ★成功した
} while(0); if(rc) { ★
異常時処理
}} ★終り
とかそういう話?
こういうのを #define で「エセ構文糖」みたいに定義する人もいますよね。(自分はあまり好きじゃない。格好悪いと思う)
C言語用の単体テストフレームワークで unity ってのがあります。unity ではテストコード内で 独自の try ~ catch 風文法を書けるのですが、それがまさに (setjmp longjmp も使って) #define でエセ構文糖風に実装してました。需要があれば再度調べてここで概要報告しますw
981はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 9b3e-g5YV)
2023/10/30(月) 09:24:19.57ID:I7fISnX+0 >>975
Go の defer に倣うなら defer 文に書けるのは関数かメソッドの呼出し。
(式一般、文一般を書けるわけではない。)
呼出しは関数の末尾だが引数は書いてある場所で評価されるというルール。
C 風の文法で書くなら
double* q = malloc(something);
defer free(q);
q=NULL;
return;
というように書いても malloc した場所はちゃんと free されることになる。
このルールのおかげで前準備と後始末を近い場所に書けて「対応関係は」一目瞭然と言えるが、
そのために変則的な評価規則が入ってるわけ。
式単位での順序が入れ替わるってだけじゃなくて引数の評価と関数の呼び出しが
分離されるってだいぶん変な仕組みだよな。
Go の defer に倣うなら defer 文に書けるのは関数かメソッドの呼出し。
(式一般、文一般を書けるわけではない。)
呼出しは関数の末尾だが引数は書いてある場所で評価されるというルール。
C 風の文法で書くなら
double* q = malloc(something);
defer free(q);
q=NULL;
return;
というように書いても malloc した場所はちゃんと free されることになる。
このルールのおかげで前準備と後始末を近い場所に書けて「対応関係は」一目瞭然と言えるが、
そのために変則的な評価規則が入ってるわけ。
式単位での順序が入れ替わるってだけじゃなくて引数の評価と関数の呼び出しが
分離されるってだいぶん変な仕組みだよな。
982デフォルトの名無しさん (アウアウウー Sad5-g+2W)
2023/10/30(月) 10:15:21.12ID:xnp7PI6ya >>973-974
Nim の defer 良いよね
Nim の defer 良いよね
レス数が950を超えています。1000を超えると書き込みができなくなります。
ニュース
- 外務省局長は無言で厳しい表情…日中の高官協議終了か 高市首相“台湾”発言で中国が強硬対応 発言撤回求めたか… [BFU★]
- 中国国営メディア「沖縄は日本ではない」… ★6 [BFU★]
- 政府、株式の配当など金融所得を高齢者の医療保険料や窓口負担に反映する方針を固めた [バイト歴50年★]
- 中国国営メディア「沖縄は日本ではない」…★7 [BFU★]
- バービー、 台湾有事の発言の波紋で「たまったもんじゃない」「高市さんに真意は聞きたい」「国民に向けて説明してほしい」 [muffin★]
- ナイツ塙が指摘のローソンコーヒーカップ、ロゴ「L」で誤解生みデザイン変更へ 在庫使い切る3か月後にリニューアル [muffin★]
- 日本政府「高市総理の発言は問題ないと伝え、中国総領事のSNS投稿は問題があると中国に伝えました😊」 [931948549]
- 高市早苗、岸田政権(当時)に「台湾有事は日本の有事か」という質問をしていた [175344491]
- 【悲報】中国→日本行きの航空チケット、高市有事の影響で50万人分がキャンセルされる [834922174]
- ケンタッキーの○○○バーガーという予告がアレを想起すると話題に [523957489]
- んなっしょい🍬禁止🈲のお🏡
- 【悲報】早速高市首相のせいで全国の民泊でキャンセルラッシュwwwwwwwwwwww 経営者も嘆き「こんな事は初めてだ…」😲 [871926377]
