【C言語】 static関数のプロトタイプ宣言を書くのが面倒臭いと思うのが正しい

■static関数のプロトタイプ宣言を書くのが面倒くさい 業務で、「ソースコードを上から下へ読めるようにmain()関数を上に書く」とルール化して、static関数のプロトタイプ宣言を何百行もコメント付きで記述するプロジ… 続きを読む 【C言語】 static関数のプロトタイプ宣言を書くのが面倒臭いと思うのが正しい

【C言語】マルチステートメントの勧め

■シングルステートメント ■マルチステートメント(推奨) 表のように書ける時は、ぱっと見ただけで瞬間的に理解できるのでマルチステートメントがお勧めです。 参考: プログラム言語 C の推奨されるスタイルとコーディング規範… 続きを読む 【C言語】マルチステートメントの勧め

【C言語】
コーディング規約で
思考が止まる
ブラックルールとは?

■嫌いなブラックルール ・char/short/int/long を直接記述する事禁止する・数値を直接記述すること禁止、必ずマクロにする事・変数の宣言は関数の先頭でまとめて行い別の行で全てゼロで一律もれなく初期化する事・… 続きを読む 【C言語】
コーディング規約で
思考が止まる
ブラックルールとは?

【C言語】
ヨーダ記法は
昭和のウサギ跳びと同じ臭い
今は-Werrorオプションで
if(x=0)のバグを防ごう

warning: suggest parentheses around assignment used as truth value  警告:真偽値として使用するなら代入式にカッコつける[-Wparentheses] ■… 続きを読む 【C言語】
ヨーダ記法は
昭和のウサギ跳びと同じ臭い
今は-Werrorオプションで
if(x=0)のバグを防ごう

【C言語】
関数名や変数名に漢字を使うとものすごくわかりやすい

■1.変数名や関数名に漢字を使用した例 2022年令和4年現在gcc11,clangでコンパイル可能です!3秒もあれば処理内容が理解できるのでは? ■2.deepLで訳して書き直してみた DeepL翻訳サイトで訳してもら… 続きを読む 【C言語】
関数名や変数名に漢字を使うとものすごくわかりやすい

【C言語】
無限ループの書き方
while(1)を避け
for(;;)を使う

■1.無限ループwhile(1)には亜種が多い(非推奨) while(1)から派生した色々な書き方があります。for(;;)の派生は、せいぜいセミコロンの空白くらいです。 ■2.while(1)に文句を言うツール対策(非… 続きを読む 【C言語】
無限ループの書き方
while(1)を避け
for(;;)を使う

【C言語サンプル】
今時の Hello world!
(C89/90を捨てC99へ移行)

c99仕様のC言語ではmain 末尾の return 0 は書かなくてもOK! C89仕様のC言語:30年以上前の古い仕様 gcc hello.c -Wall -std=c89 でコンパイルするとgccにmain のre… 続きを読む 【C言語サンプル】
今時の Hello world!
(C89/90を捨てC99へ移行)

【C言語】
局所変数のループカウンタにloop_counterと長い名前を付けるのは止めよう

■1.長い名前は本当に分かりやすいですか? ↑↓これは間違いだ! 【保守の事を考えると”変数名”に意味のない名前を与えると後でわからなくなる。多少面倒でも後で見て何を意味している変数なのかわかるよ… 続きを読む 【C言語】
局所変数のループカウンタにloop_counterと長い名前を付けるのは止めよう