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/
-
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
※前スレ
C言語なら俺に聞け 152
https://mevius.5ch.net/test/read.cgi/tech/1560763630/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
探検
C言語なら俺に聞け 153
レス数が900を超えています。1000を超えると表示できなくなるよ。
1デフォルトの名無しさん (ワッチョイ 5fba-LL4R)
2019/08/17(土) 23:02:42.00ID:tN5mSQYg0819798 (ワッチョイ ae2c-fJ/L)
2019/12/27(金) 21:01:30.94ID:G2Hqp8Jj0 組込み開発者におくるMISRA‐C:2004―C言語利用の高信頼化ガイド、MISRA‐C研究会、2006
この研究会は、トヨタなど大企業から、数十人のベテが集まって、
欧州人に聞きながら、作った本。
未だに、コーディングルールのバイブルだろ
元々は、Andrew Koenig の本
C Traps and Pitfalls, 1988, c1989
Cプログラミングの落とし穴
この本から、Lint が始まったのじゃないか?
この研究会は、トヨタなど大企業から、数十人のベテが集まって、
欧州人に聞きながら、作った本。
未だに、コーディングルールのバイブルだろ
元々は、Andrew Koenig の本
C Traps and Pitfalls, 1988, c1989
Cプログラミングの落とし穴
この本から、Lint が始まったのじゃないか?
820デフォルトの名無しさん (ワッチョイ aa01-Nxir)
2019/12/27(金) 21:11:55.30ID:LEFEPZUo0821デフォルトの名無しさん (ワッチョイ aa01-Nxir)
2019/12/27(金) 21:13:58.37ID:LEFEPZUo0822デフォルトの名無しさん (ワッチョイ 7001-35Sh)
2019/12/27(金) 21:29:02.92ID:BhrMVyLj0 そっかー組み込み屋さんはUNIXの歴史とか知らなかったりするのか
>>819
>この本から、Lint が始まったのじゃないか?
違います
初期の lint はベル研の V7 と同時、1979 にはリリースされています
K&R1 は特に引数まわりはスキのある仕様でしたので細かくチェックをいれる lint は必要であったのも理解できます、これは K&R2 になってかなり改善されました
それに最近のコンパイラは lint に似た warning も出せるようになったし
>この本から、Lint が始まったのじゃないか?
違います
初期の lint はベル研の V7 と同時、1979 にはリリースされています
K&R1 は特に引数まわりはスキのある仕様でしたので細かくチェックをいれる lint は必要であったのも理解できます、これは K&R2 になってかなり改善されました
それに最近のコンパイラは lint に似た warning も出せるようになったし
824798 (ワッチョイ ae2c-fJ/L)
2019/12/27(金) 22:09:21.87ID:G2Hqp8Jj0 はじめてのOSコードリーディング UNIX V6で学ぶカーネルのしくみ、青柳 隆宏、2013
そう言えば昔、こういう本も読んだ
そう言えば昔、こういう本も読んだ
825デフォルトの名無しさん (ワッチョイ 5e1d-fJ/L)
2019/12/28(土) 01:02:34.32ID:Td7wq8Cw0826デフォルトの名無しさん (ラクッペ MM70-DGYe)
2019/12/28(土) 02:00:59.65ID:xvOJ+UySM827デフォルトの名無しさん (ワッチョイ aa01-Nxir)
2019/12/28(土) 06:31:05.78ID:r5X0es4d0828デフォルトの名無しさん (ワッチョイ 9bb2-HfLM)
2019/12/28(土) 07:57:54.17ID:b9pc6wBR0 >>817
そんな可能性は絶対の絶対にゼロだ
そんな可能性は絶対の絶対にゼロだ
829デフォルトの名無しさん (ワッチョイ 9bb2-HfLM)
2019/12/28(土) 08:04:30.24ID:b9pc6wBR0 >>815
俺に言わせれば、おまえ文系くせえんだよ
俺はハード設計もやるから負論理だのド・モルガンだのは息をするくらい当たり前なことで
待遇だの裏だのという用語で得意がるやつは専門分野は何だろうと思ってしまうのさ
それから突っ込まれてるのはおまえだぞ、741本人よ
俺に言わせれば、おまえ文系くせえんだよ
俺はハード設計もやるから負論理だのド・モルガンだのは息をするくらい当たり前なことで
待遇だの裏だのという用語で得意がるやつは専門分野は何だろうと思ってしまうのさ
それから突っ込まれてるのはおまえだぞ、741本人よ
830デフォルトの名無しさん (スプッッ Sd9e-Rqzo)
2019/12/28(土) 08:18:01.34ID:5fvEktMvd 待遇で得意がるvsドモルガンで得意がる
小学生同士かよ
小学生同士かよ
831デフォルトの名無しさん (ワッチョイ aa01-Nxir)
2019/12/28(土) 08:39:28.74ID:r5X0es4d0832デフォルトの名無しさん (ワッチョイ 9bb2-HfLM)
2019/12/28(土) 09:32:59.76ID:b9pc6wBR0 やっぱり通じねえなw
833デフォルトの名無しさん (スプッッ Sd9e-Rqzo)
2019/12/28(土) 09:45:41.04ID:5fvEktMvd C言語の話しようぜ
834デフォルトの名無しさん (ワッチョイ 8746-RUNk)
2019/12/28(土) 10:06:23.41ID:VDzFwrot0 printf("やっぱり通じねえなw\n");
835798 (ワッチョイ ae2c-fJ/L)
2019/12/28(土) 11:10:17.46ID:vnZXJluZ0 電子回路・HDL などの組み込みでは、
AND, OR, NOT, NAND,NOR などの回路、
負論理、ド・モルガン、カルノー図とか、初歩だぞw
まず、情報処理の組み込みの教科書を読め!
AND, OR, NOT, NAND,NOR などの回路、
負論理、ド・モルガン、カルノー図とか、初歩だぞw
まず、情報処理の組み込みの教科書を読め!
836デフォルトの名無しさん (ワッチョイ 2135-YzVQ)
2019/12/28(土) 11:11:43.15ID:CljHkVQA0 >>831
負論理とかドモルガン知ってる人が対偶の意味知らないと思ってるの?
負論理とかドモルガン知ってる人が対偶の意味知らないと思ってるの?
837デフォルトの名無しさん (ワッチョイ 328c-M7II)
2019/12/28(土) 11:18:29.36ID:BVlwLEoZ0 双対は知らないだろう?
838デフォルトの名無しさん (アウアウウー Sa83-JRPA)
2019/12/28(土) 11:34:08.50ID:KhDEPBLca このスレっていつも下らない喧嘩を延々と続けてる奴らがいるけど、何なんだろう。どっちが正しいとか以前に言ってる中身(議論の仕方)が下らなくて他人からはどっちもバカにしか見えないから消えてくれないか。
>>827
Sun OS 4.1 のはやったことがありますが、初期の頃とは変わっていたのかも
Sun OS 4.1 のはやったことがありますが、初期の頃とは変わっていたのかも
840デフォルトの名無しさん (ラクッペ MM70-DGYe)
2019/12/28(土) 11:54:34.25ID:xvOJ+UySM841デフォルトの名無しさん (ドコグロ MM2e-Nxir)
2019/12/28(土) 12:53:03.04ID:1RUtvmltM842デフォルトの名無しさん (ワッチョイ 2135-YzVQ)
2019/12/28(土) 13:01:09.99ID:CljHkVQA0 読んでないから知らんけどこんな雑談に対偶ガーとか論理ガーとか証明ガーってのは馬鹿馬鹿しいね。
843デフォルトの名無しさん (ラクッペ MM70-DGYe)
2019/12/28(土) 13:08:05.93ID:xvOJ+UySM 似て非なるもの
ド・モルガン
A ∩ B = ¬(¬A ∪ ¬B)
A ∪ B = ¬(¬A ∩ ¬B)
対偶
A ⇒ B = ¬(¬B ⇒ ¬A)
ド・モルガン
A ∩ B = ¬(¬A ∪ ¬B)
A ∪ B = ¬(¬A ∩ ¬B)
対偶
A ⇒ B = ¬(¬B ⇒ ¬A)
844デフォルトの名無しさん (ラクッペ MM4b-HCDf)
2019/12/28(土) 13:09:43.37ID:1WIkADffM 正直、アスペ馬鹿が下らないことを追求したがってるだけにしか見えない
845デフォルトの名無しさん (ラクッペ MM70-DGYe)
2019/12/28(土) 13:14:14.77ID:xvOJ+UySM コピペ改変してから何か変だと思い直してみれば正解はこうだったすまん
対偶
A ⇒ B = ¬B ⇒ ¬A
対偶
A ⇒ B = ¬B ⇒ ¬A
846825 (ワッチョイ 5e1d-fJ/L)
2019/12/28(土) 13:19:13.30ID:Td7wq8Cw0847デフォルトの名無しさん (ラクッペ MM4b-EtAK)
2019/12/28(土) 14:01:27.13ID:L2lyDMSgM 後出しで負けを実装するとよりじゃんけんぽくなるぞ
848デフォルトの名無しさん (ワッチョイ f6d2-Bxcu)
2019/12/28(土) 15:05:05.31ID:VCBq52Cm0 C言語のBNFって何種類あるの?
知ってるだけ全部教えて
知ってるだけ全部教えて
849デフォルトの名無しさん (ワッチョイ aa01-Nxir)
2019/12/28(土) 15:51:37.71ID:r5X0es4d0850デフォルトの名無しさん (ワッチョイ aa01-Nxir)
2019/12/28(土) 15:54:09.64ID:r5X0es4d0 >>848
https://cs.wmich.edu/~gupta/teaching/cs4850/sumII06/The%20syntax%20of%20C%20in%20Backus-Naur%20form.htm
https://cs.wmich.edu/~gupta/teaching/cs4850/sumII06/The%20syntax%20of%20C%20in%20Backus-Naur%20form.htm
851デフォルトの名無しさん (アウアウウー Sa83-JRPA)
2019/12/28(土) 15:54:25.66ID:Srq0kgZJa >>848
ググれ
ググれ
852デフォルトの名無しさん (ワッチョイ c6c5-RbSw)
2019/12/28(土) 17:33:03.88ID:y9rwRM9T0 OKグーグル、CのBNFを教えて
853デフォルトの名無しさん (ワッチョイ 7001-35Sh)
2019/12/28(土) 17:41:03.87ID:c/4LCSnv0 K&Rの付録ページになかったかなかな?
854デフォルトの名無しさん (ワッチョイ c6c5-RbSw)
2019/12/28(土) 17:45:59.25ID:y9rwRM9T0 BNFで思い出したが
enum { a } func(void) { return a; }
この文法使い道ないよな
enum { a } func(void) { return a; }
この文法使い道ないよな
855デフォルトの名無しさん (ワッチョイ f2ad-K0SF)
2019/12/29(日) 03:22:40.86ID:GZSHSaBs0 >>855
その書き分けに意味はあるのでしょうか?
その書き分けに意味はあるのでしょうか?
857デフォルトの名無しさん (アウアウウー Sa83-JRPA)
2019/12/29(日) 10:49:06.87ID:OzwmxFfFa858デフォルトの名無しさん (ワッチョイ 9612-ggXP)
2019/12/29(日) 11:39:04.46ID:k3T+0Ot70 やたら長いコードの中で
it = &a;
*a = 0;
it = 0;
a = 0;
とか書かれたら混乱するだろ。
あ、でも屑はハンガリー人なんだっけ?
it = &a;
*a = 0;
it = 0;
a = 0;
とか書かれたら混乱するだろ。
あ、でも屑はハンガリー人なんだっけ?
>>858
ハンガリアンはやらないです
ハンガリアンはやらないです
860デフォルトの名無しさん (スップ Sd9e-Rqzo)
2019/12/29(日) 22:32:49.20ID:Y3W4ZjXNd >>858
混乱するから数値のゼロもdefineしなさい
混乱するから数値のゼロもdefineしなさい
861デフォルトの名無しさん (ワッチョイ 7001-35Sh)
2019/12/29(日) 23:06:45.98ID:jE46OAyh0 ハンガリー人は宇宙人だから仕方ないね
862デフォルトの名無しさん (ワッチョイ 4652-RbSw)
2019/12/30(月) 06:33:44.11ID:ypuMXf6z0 >>825,846
自分ならこんな感じで書く、程度のものですが思うけど良かったらどうぞ
https://pastebin.com/idm94WiU
別の機能を追加する必要とか出てきたとき、
ジャンケン自体を関数化してあげたほうがmain()関数内がゴチャゴチャしなくて良いかなと思って書きました。
自分ならこんな感じで書く、程度のものですが思うけど良かったらどうぞ
https://pastebin.com/idm94WiU
別の機能を追加する必要とか出てきたとき、
ジャンケン自体を関数化してあげたほうがmain()関数内がゴチャゴチャしなくて良いかなと思って書きました。
863デフォルトの名無しさん (ワッチョイ 0073-Rqzo)
2019/12/30(月) 08:17:18.73ID:JZjS6BbQ0 ゴチャゴチャがjankenに移るだけ
864デフォルトの名無しさん (ワッチョイ baa5-JrBF)
2019/12/30(月) 09:11:36.36ID:W9rqQHA30 typedef char String[1024];
とtypedefしてるのはたしかどこかの教科書の流儀だったはずだ
最近その話題を見かけた
とtypedefしてるのはたしかどこかの教科書の流儀だったはずだ
最近その話題を見かけた
865デフォルトの名無しさん (ワッチョイ 872c-La8A)
2019/12/30(月) 12:24:04.93ID:M1MgDNrq0 あいこでの再戦と、もう一回じゃんけんするのは、
目的が違うんだから別ロジックにすべき。
目的が違うんだから別ロジックにすべき。
866デフォルトの名無しさん (スッップ Sd70-Rqzo)
2019/12/30(月) 12:31:51.34ID:/N6WhDZId 同じ処理を共通化する
今後異なる可能性のある処理をあらかじめ分けておく
いろんな設計思想がある
今後異なる可能性のある処理をあらかじめ分けておく
いろんな設計思想がある
867デフォルトの名無しさん (ワッチョイ 7001-35Sh)
2019/12/30(月) 17:54:24.59ID:DLFwINBS0 #define O 0
868デフォルトの名無しさん (ワッチョイ 1c79-CfTH)
2019/12/30(月) 23:34:38.97ID:QMDb+rs/0869デフォルトの名無しさん (ワッチョイ e2ad-sLG6)
2019/12/31(火) 00:15:56.34ID:Qb6UeAHn0870デフォルトの名無しさん (ワッチョイ 4a77-HfLM)
2019/12/31(火) 00:24:22.42ID:jyfGwMQG0 1文字入力ならgetc使うかな。
871デフォルトの名無しさん (ワッチョイ 2cb6-HfLM)
2019/12/31(火) 07:44:51.11ID:8dhupYNq0 >>868
jmp_bufは配列のtypedefだよ
jmp_bufは配列のtypedefだよ
872デフォルトの名無しさん (ワッチョイ 4279-A9ky)
2020/01/01(水) 00:17:51.96ID:DMjscTxe0873デフォルトの名無しさん (ワッチョイ 5dcd-kIX1)
2020/01/02(木) 09:27:06.04ID:9VSdJ8Nx0 ポインタを受け取る関数先頭では必ずnullチェックを行うコーティングルールが有るのですが
malloc失敗したポインタをそのまま渡した時ぐらいしか使い道が思い付きません…
malloc失敗したポインタをそのまま渡した時ぐらいしか使い道が思い付きません…
874デフォルトの名無しさん (ワッチョイ 2e7b-nWGE)
2020/01/02(木) 09:28:21.50ID:mLLKwKl50 freeしたときに0入れるルールもあるんじゃないのそれ
875デフォルトの名無しさん (ワッチョイ 2252-rouQ)
2020/01/02(木) 09:37:24.05ID:+UNtt4nj0876デフォルトの名無しさん (ワッチョイ 814f-UAPS)
2020/01/02(木) 09:53:01.45ID:qr+4fHWP0 仕様としてnullを許可する関数ではチェック不要としているのかあるいは一律に
null渡し禁止としているのかで評価は変わりそうだが。
null渡し禁止としているのかで評価は変わりそうだが。
877デフォルトの名無しさん (ブーイモ MM62-kvXh)
2020/01/02(木) 10:24:26.88ID:Lvb+z/bpM get_state()みたいな関数があって失敗時はnullを返す。それを知らずに別の関数に戻り値を直接渡してしまったとか、nullが誤って渡されるケースなんていくらでもあると思うが。
873が超天才でそんなミスは絶対ありえないとしても、他人のコードやドキュメントが間違ってる可能性もある
873が超天才でそんなミスは絶対ありえないとしても、他人のコードやドキュメントが間違ってる可能性もある
878デフォルトの名無しさん (ワッチョイ c2a5-s4wZ)
2020/01/02(木) 10:39:04.82ID:Dgcghn810 Player*とEnemy*を取るRPGのバトル関数で
どちらかが死んでたらplayer->attack()関数は盛大に失敗する
この時の当該playerは消滅したわけでは無いが
enemyはメモリ上から消えている
ついでにこのattack関数が実は関数ポインタに付けられたプレイヤーのスキルだった場合、
attackがカラッポだと、徒手空拳になるか防御するか何もしないか、何故か敵味方全員が即死していきなりエンディングが始まるかのどれかになる
どちらかが死んでたらplayer->attack()関数は盛大に失敗する
この時の当該playerは消滅したわけでは無いが
enemyはメモリ上から消えている
ついでにこのattack関数が実は関数ポインタに付けられたプレイヤーのスキルだった場合、
attackがカラッポだと、徒手空拳になるか防御するか何もしないか、何故か敵味方全員が即死していきなりエンディングが始まるかのどれかになる
879デフォルトの名無しさん (ワッチョイ e179-E95m)
2020/01/02(木) 11:31:53.70ID:FHRar1Ix0 安全性を取るならいついかなる時もNULLチェックは行うべき
だがそもそもパフォーマンス至上主義だから
Cという太古の言語を危険を冒してまで使っているということを考えると微妙
パフォーマンスが重要でないならCを使っていることからして論外
だがそもそもパフォーマンス至上主義だから
Cという太古の言語を危険を冒してまで使っているということを考えると微妙
パフォーマンスが重要でないならCを使っていることからして論外
880デフォルトの名無しさん (ブーイモ MMb6-vILD)
2020/01/02(木) 11:38:58.14ID:ZKet2vMyM 成否を含んだtupleを渡し実行時に判別、式全体を読み飛ばす粒度の小さい隠れた分岐構文みたいなの有ればいいのにねー
成否要素だけの反転は !!tulpevalue みたいな感じで
c言語の仕事じゃないだろうしそもそもtupleなんて持ってないし
うんこマが技巧駆使してわけわからんコード書くツールになるだけかもしれんし弊害いろいろ思いつくけど
成否要素だけの反転は !!tulpevalue みたいな感じで
c言語の仕事じゃないだろうしそもそもtupleなんて持ってないし
うんこマが技巧駆使してわけわからんコード書くツールになるだけかもしれんし弊害いろいろ思いつくけど
881デフォルトの名無しさん (ワッチョイ 2252-rouQ)
2020/01/02(木) 11:39:55.37ID:+UNtt4nj0 >>878
召喚された悪魔が鼻から出てきて世界滅亡エンドも追加しといて。
召喚された悪魔が鼻から出てきて世界滅亡エンドも追加しといて。
882デフォルトの名無しさん (ワッチョイ 4201-19tT)
2020/01/02(木) 12:33:18.19ID:LqVuN/CI0883デフォルトの名無しさん (ワッチョイ 06ad-0Mr6)
2020/01/02(木) 12:38:16.19ID:wpzQe/fn0 nullに意味を持たせないプログラムなら、
null checkしないと落ちる環境ならする意味ないんじゃね
null checkしないと落ちる環境ならする意味ないんじゃね
884デフォルトの名無しさん (アウウィフ FFa5-p4uH)
2020/01/02(木) 14:45:20.78ID:fRqsjLPxF Release build だと assert 消えるって知らない人意外と多いんですね
885デフォルトの名無しさん (ワッチョイ 2252-rouQ)
2020/01/02(木) 15:06:10.66ID:+UNtt4nj0 >>884
消えるって知ってるからassertにしろっていう意見なんだろう
消えるって知ってるからassertにしろっていう意見なんだろう
886デフォルトの名無しさん (アウウィフ FFa5-p4uH)
2020/01/02(木) 15:47:44.05ID:NYIo0K4bF その意見を完全にスルーしてコメントしてる人がいるよね
887デフォルトの名無しさん (ドコグロ MM0a-19tT)
2020/01/02(木) 16:46:49.09ID:YqaismelM >>886
誰のことを言ってるの?
誰のことを言ってるの?
888デフォルトの名無しさん (ワッチョイ 8101-W/+2)
2020/01/02(木) 19:01:18.56ID:/MiE1Mk20 ぬるぽ
889デフォルトの名無しさん (ワッチョイ 41e8-W/+2)
2020/01/02(木) 19:06:06.49ID:LbxbUX1g0 がっ!
890デフォルトの名無しさん (ワッチョイ 6e12-kvXh)
2020/01/02(木) 19:09:50.49ID:ZQF68/R30 酷い自演を見た
891デフォルトの名無しさん (ワッチョイ 41e8-W/+2)
2020/01/02(木) 19:13:07.31ID:LbxbUX1g0 ジ・エンド!
892デフォルトの名無しさん (ワッチョイ 02f5-HvJ8)
2020/01/02(木) 19:21:03.30ID:koJayFbu0 assertを本番環境に持ち込むべきと
主張する痛いやつが昔いたが
奴は今どうしてるかな
主張する痛いやつが昔いたが
奴は今どうしてるかな
C++11 の static_assert は便利なんですけれどもね…これ、C に入らないかな…
assert も static_assert と同じ用途・考え方で使うべきものかと思いますね
assert も static_assert と同じ用途・考え方で使うべきものかと思いますね
894デフォルトの名無しさん (ワッチョイ 02f5-HvJ8)
2020/01/02(木) 20:05:40.84ID:koJayFbu0 Cにもstatic_assertか
考えたこともなかったが
確かにあったらよさそうだな
もういじるなってのが
俺の基本だが
追加に賛成できる珍しい例だ
考えたこともなかったが
確かにあったらよさそうだな
もういじるなってのが
俺の基本だが
追加に賛成できる珍しい例だ
895デフォルトの名無しさん (ワッチョイ 4201-19tT)
2020/01/02(木) 20:45:56.41ID:LqVuN/CI0896デフォルトの名無しさん (ブーイモ MM85-rvM9)
2020/01/02(木) 20:51:06.32ID:hML6I4krM おいおいおい
897デフォルトの名無しさん (ブーイモ MM62-iq6k)
2020/01/02(木) 20:59:07.77ID:tgRnMcUUM >>895
assert は Debug ビルドのときだけチェックを行う実装になってるのが普通
assert は Debug ビルドのときだけチェックを行う実装になってるのが普通
898デフォルトの名無しさん (ワッチョイ 4201-19tT)
2020/01/02(木) 21:59:00.14ID:LqVuN/CI0899デフォルトの名無しさん (ブーイモ MM62-iq6k)
2020/01/02(木) 22:07:28.72ID:tgRnMcUUM900デフォルトの名無しさん (ワッチョイ 8263-UAPS)
2020/01/02(木) 22:08:11.77ID:SH5dgl7q0 本番環境に持ち込むべき
影響出ないんだから
こういうことでは
影響出ないんだから
こういうことでは
901デフォルトの名無しさん (ブーイモ MM6d-vILD)
2020/01/02(木) 22:22:27.18ID:oLW+m36dM 深いところで拾ったエラーを浅層に戻して対応する必要がなく「ダメよ」と述べ落ち許されるプログラムならば
assert残すのも有りよね
実際#ifdef DEBUGで包んでるだけだし
imagemagickなんかも引数チェックを通った後の個々パラメータ内で不整合出たらassertでメッセージ流して落ちるし
assert残すのも有りよね
実際#ifdef DEBUGで包んでるだけだし
imagemagickなんかも引数チェックを通った後の個々パラメータ内で不整合出たらassertでメッセージ流して落ちるし
903デフォルトの名無しさん (ワッチョイ 4201-19tT)
2020/01/02(木) 22:29:39.05ID:LqVuN/CI0904デフォルトの名無しさん (ワッチョイ 2252-rouQ)
2020/01/02(木) 22:30:49.81ID:+UNtt4nj0 >>901
assertに引っ掛かったときの挙動は置いとくとしても、assertの処理内容や頻度によっては実行時コストが問題になる可能性も無くはないから、単純にやってよしとはならないと思うぞ。
assertに引っ掛かったときの挙動は置いとくとしても、assertの処理内容や頻度によっては実行時コストが問題になる可能性も無くはないから、単純にやってよしとはならないと思うぞ。
905デフォルトの名無しさん (ブーイモ MM6d-vILD)
2020/01/02(木) 23:00:40.06ID:oLW+m36dM 効率厨はログ出力を見れるGNUemacsのeshell辺りででもwindowsプログラム立ち上げてみ?
プロプラ、オープンソースに関係なく大半のリリースビルドが膨大な出力を出しっパになってる現状に絶望するだろうから
プロプラ、オープンソースに関係なく大半のリリースビルドが膨大な出力を出しっパになってる現状に絶望するだろうから
906デフォルトの名無しさん (ワッチョイ 8263-UAPS)
2020/01/02(木) 23:03:44.94ID:SH5dgl7q0 >>905
その環境で動かすと、プリプロセッサ段階で消去されているはずのデバッグ文実行結果が見れる様になるんですか?
その環境で動かすと、プリプロセッサ段階で消去されているはずのデバッグ文実行結果が見れる様になるんですか?
907デフォルトの名無しさん (ワッチョイ 2252-rouQ)
2020/01/03(金) 01:04:07.68ID:kXvb5Zcs0 >>905
処理内容や頻度によって実行時コストが問題になる可能性があると言っただけで効率厨扱いとはw
既存プログラムでログを大量に出しているからと反論しているが、だからそれがどうしたというのだ? ログを出しても性能的に問題ない範囲、頻度、量で出しているだけだろう。
処理内容や頻度によって実行時コストが問題になる可能性があると言っただけで効率厨扱いとはw
既存プログラムでログを大量に出しているからと反論しているが、だからそれがどうしたというのだ? ログを出しても性能的に問題ない範囲、頻度、量で出しているだけだろう。
>>907
assertion は「コメントの一種」という私の立場では、重い assertion の罪は軽い、許容できると感じています
assertion は「コメントの一種」という私の立場では、重い assertion の罪は軽い、許容できると感じています
909デフォルトの名無しさん (ワッチョイ e173-ALt1)
2020/01/03(金) 08:42:01.33ID:3k7MKqlh0 組み込みだとタイミング込みで評価するから
ビルドを切り替えられないんだよね
assertはログだけ出すようにしてるが
ウォッチドッグを効かすってのもありかな
起こり得ないところで使うってのはその通り
ビルドを切り替えられないんだよね
assertはログだけ出すようにしてるが
ウォッチドッグを効かすってのもありかな
起こり得ないところで使うってのはその通り
910デフォルトの名無しさん (ワッチョイ c2a5-s4wZ)
2020/01/03(金) 14:46:00.81ID:SORF6jE90 ロケット打ち上げ2秒後でassert出ても意味が無いな
そのまま大爆発だ
衝突する0.5秒前でassert出ても意味が無い
時速90kmでそのまま衝突だ
そのまま大爆発だ
衝突する0.5秒前でassert出ても意味が無い
時速90kmでそのまま衝突だ
uint64_t を配列の添え字に使えるかどうかって何か規格はありますか?
手元の環境は unsigned int のようなんですが、gcc/ming32-x64
手元の環境は unsigned int のようなんですが、gcc/ming32-x64
912デフォルトの名無しさん (ワッチョイ 2eda-ALt1)
2020/01/04(土) 22:03:02.52ID:hAlxX0tq0 uint64_tどころかポインタも使えるぞ
913デフォルトの名無しさん (ワッチョイ 791a-UAPS)
2020/01/04(土) 22:09:03.08ID:49Uce+wI0 >>911 何を見て「unsigned int のよう」と言っているの?
914デフォルトの名無しさん (ワッチョイ 42da-hqVv)
2020/01/04(土) 22:28:50.08ID:HbavYk5j0 >>911
ISO/IEC 9899:2011 (E)
6.5.2.1 Array subscripting
1 One of the expressions shall have type "pointer to complete object type", the other
expression shall have integer type, and the result has type "type".
7.19 Common definitions <stddef.h>
size_t
which is the unsigned integer type of the result of the sizeof operator;
どこにもunsigned intに限定するとは書いてねえぞ
unsigned integerと書いてあるのが
おまえはunsigned intに見えるのか?
ISO/IEC 9899:2011 (E)
6.5.2.1 Array subscripting
1 One of the expressions shall have type "pointer to complete object type", the other
expression shall have integer type, and the result has type "type".
7.19 Common definitions <stddef.h>
size_t
which is the unsigned integer type of the result of the sizeof operator;
どこにもunsigned intに限定するとは書いてねえぞ
unsigned integerと書いてあるのが
おまえはunsigned intに見えるのか?
>>912-914
コメントありがとうございます
uint64_t と int をいいかげんにチャンポンに使っていたための祟りに襲われてしまっているところでして…
a[i] = *(a + i)
を考えれば、i が int = int32_t, であろうと uint64_t であろうと、うまくやってくれると予想できますね
コメントありがとうございます
uint64_t と int をいいかげんにチャンポンに使っていたための祟りに襲われてしまっているところでして…
a[i] = *(a + i)
を考えれば、i が int = int32_t, であろうと uint64_t であろうと、うまくやってくれると予想できますね
916デフォルトの名無しさん (ワッチョイ c2a5-s4wZ)
2020/01/05(日) 12:03:03.18ID:buL7vvPT0 そこは
[a]i = *(a+i)
だろ
[a]i = *(a+i)
だろ
917デフォルトの名無しさん (ワッチョイ 42da-hqVv)
2020/01/05(日) 12:18:38.35ID:JLxpDEWT0918デフォルトの名無しさん (ワッチョイ 41e8-W/+2)
2020/01/05(日) 12:50:09.43ID:+e7zv/8B0 STLの配列の添え字は、std::size_tと同じ範囲が使えるように思う。
このstd::size_tには長さの制約は多分ない。
常識的に考えて、32ビットのプログラムで64ビットの配列を使うことはあまり現実的ではない。
なので、std::size_tの長さはNビットプログラムにフィットするようにコンパイル時にスイッチされる。はず。
このstd::size_tには長さの制約は多分ない。
常識的に考えて、32ビットのプログラムで64ビットの配列を使うことはあまり現実的ではない。
なので、std::size_tの長さはNビットプログラムにフィットするようにコンパイル時にスイッチされる。はず。
レス数が900を超えています。1000を超えると表示できなくなるよ。
ニュース
- バリ島で男子生徒ら集団万引きか、防犯カメラ映像が拡散 京都の大谷中学・高校が「窃盗行為」謝罪★4 [七波羅探題★]
- 中国軍機レーダー照射、トランプ氏沈黙突く 試される日本外交 [蚤の市★]
- 【地震】青森県で震度6強 長周期地震動も 津波注意報すべて解除 ★7 [ぐれ★] [ぐれ★]
- トランプ大統領 エヌビディア製AI半導体の中国輸出許可 安全保障重視の方針転換 [蚤の市★]
- 【広島】「万引きした人を追跡」コンビニ店員の男性(46)を果物ナイフで刺したか 中国籍の少年(17)を殺人未遂容疑で現行犯逮捕 [ぐれ★]
- 【サッカー】58歳カズ「オファーが来ている」 J3福島と近日中にも交渉 早ければ年内にも決断 [征夷大将軍★]
- 気象庁・高市内閣「この後311級の地震の可能性があります。北海道〜関東の人は1週間は地震が来てもすぐ逃げられる格好をしてください」 [597533159]
- 【動画】ファッションモデルまんこ、裸でランウェイを歩く。これがファッションだと言われて [749674962]
- 【悲報】高市早苗の擬人化がXで大バズりwwwwwwwwwwww [455031798]
- バリ島で万引きした高校生が叩かれているけどさ
- 早大名誉教授「高市内閣の高支持率はデータ操作か、支持している日本人がアホなのか」👈核心を突いてしまう [868050967]
- こんぺこ!こんぺこ!こんぺこ!🐰🏡
