アカウント名:
パスワード:
ツッコミがとても的確だった。それにしても短いコードによくもまあバグを詰め込んだもんだ。
それにしても、sizeof(T*) は、うっかりやってしまうミスとしては重要。C/C++再入門の方は、他山の石として。
うっかりやる、までは分かるんだがね一度でもデバッガー付きのIDEで動かせば判るだろうってのが残ったままってのがねぇ
あえてツッコミにツッコむなら「構造体の実体ではないけどポインタの実体ではある」位かな。
Cのポインタは参照機能を提供できる値型で、それ自体は参照型ではない。てのがポインタの理解を阻む壁の一つだと勝手に思ってる。
なんか凄い既視感がある間違いだなと思ったら多分これだった。
ZDNetのポインタ解説記事で勘違いhttps://developers.srad.jp/story/08/04/01/0451222/ [developers.srad.jp]https://builder.japan.zdnet.com/script/sp_c-programming-language/20370255/ [zdnet.com]
やっぱり
char *str;
派は頭おかしいな。
char* str;
にしないと。
そして、char* str, str2; とやって死ぬんですよ。
型名に*付ける流儀では、当然1行で複数の宣言するのも禁止ですよ。
そんな禁止事項設けるよりポインタ型をtypedefしようよ
そんなことしたらぱっと見でポインタかどうかわからなくなるから、余計にややこしいだろ。
win32「・・・」
そこでハンガリアンですよ。型名の頭にPを付ければOK。
そして形骸化するFar Pointer= LP接頭辞。LPLP接頭辞なんかもう頭を疑うレベル。
細かいことを言うと、sizeof(char)は1であることが保証されているので使うのは無意味。
コメントみたいなもんだから有意義だよ。動作が遅くなるわけでもないし。
ですね。移植でcharがTCHARにならんとも限らないのでラベルとして残す意義はとてもある。
C言語で炎上といえば、これを思い出した。実によく燃えていたなぁ・・・
https://builder.japan.zdnet.com/script/sp_c-programming-language/20370255/ [zdnet.com]
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
身近な人の偉大さは半減する -- あるアレゲ人
リンク先のC言語見てきた (スコア:0)
ツッコミがとても的確だった。
それにしても短いコードによくもまあバグを詰め込んだもんだ。
Re: (スコア:0)
それにしても、sizeof(T*) は、うっかりやってしまうミスとしては重要。C/C++再入門の方は、他山の石として。
Re: (スコア:0)
うっかりやる、までは分かるんだがね
一度でもデバッガー付きのIDEで動かせば判るだろうってのが残ったままってのがねぇ
Re: (スコア:0)
あえてツッコミにツッコむなら「構造体の実体ではないけどポインタの実体ではある」位かな。
Cのポインタは参照機能を提供できる値型で、それ自体は参照型ではない。
てのがポインタの理解を阻む壁の一つだと勝手に思ってる。
関連ストーリー (スコア:0)
なんか凄い既視感がある間違いだなと思ったら
多分これだった。
ZDNetのポインタ解説記事で勘違い
https://developers.srad.jp/story/08/04/01/0451222/ [developers.srad.jp]
https://builder.japan.zdnet.com/script/sp_c-programming-language/20370255/ [zdnet.com]
Re: (スコア:0)
やっぱり
派は頭おかしいな。
にしないと。
Re: (スコア:0)
そして、char* str, str2; とやって死ぬんですよ。
Re: (スコア:0)
型名に*付ける流儀では、当然1行で複数の宣言するのも禁止ですよ。
Re: (スコア:0)
そんな禁止事項設けるよりポインタ型をtypedefしようよ
Re: (スコア:0)
そんなことしたらぱっと見でポインタかどうかわからなくなるから、余計にややこしいだろ。
Re: (スコア:0)
win32「・・・」
Re: (スコア:0)
そこでハンガリアンですよ。型名の頭にPを付ければOK。
そして形骸化するFar Pointer= LP接頭辞。LPLP接頭辞なんかもう頭を疑うレベル。
Re: (スコア:0)
細かいことを言うと、sizeof(char)は1であることが保証されているので使うのは無意味。
Re: (スコア:0)
コメントみたいなもんだから有意義だよ。動作が遅くなるわけでもないし。
Re: (スコア:0)
ですね。
移植でcharがTCHARにならんとも限らないのでラベルとして残す意義はとてもある。
Re: (スコア:0)
C言語で炎上といえば、これを思い出した。
実によく燃えていたなぁ・・・
https://builder.japan.zdnet.com/script/sp_c-programming-language/20370255/ [zdnet.com]