C言語コーディング規約

スポンサーリンク

組込みソフト(ファームウェア)向けのc言語コーディング規約を書いています。これをみておけばcの文法的なミス減らせるかなと思います。また、C言語のベテランの方もひとつくらいは新しい発見があると思います。ぜひご参考ください!

スポンサーリンク

コーディング規約一覧

プリプロセッサ編
https://nagayasu-shinya.com/ccpp-coding-rule-preprocessor/

関数の定義と宣言編
https://nagayasu-shinya.com/ccpp-coding-rule-function/

変数の定義と宣言編
https://nagayasu-shinya.com/ccpp-coding-rule-variable/

型の定義編
https://nagayasu-shinya.com/ccpp-coding-rule-typedef/

演算と式編
https://nagayasu-shinya.com/ccpp-coding-rule-operand/

ポインタ編
https://nagayasu-shinya.com/ccpp-coding-rule-pointer/

標準ライブラリ編
https://nagayasu-shinya.com/ccpp-coding-rule-stdlib/

スポンサーリンク

このc言語コーディング規約の目的

このc言語コーディング規約は、組込みソフトウェア向けのC言語コーディング規約について説明します。
C言語の規格には理解しづらい規則が多くあり、それを知らずにコーディングしてバグを出してしまうことがままあります。C言語の規格を理解すればそのようなバグは避けられますが、難解な規格書を読破するには多くの時間を費やさねばなりません。そこでこの書籍では、C言語コーディング規約としてC言語の間違えやすいところを選別して記載し、開発者のみなさんがC言語の細微の規則を理解する手間を省けるようにしています。
つまり、開発者の皆様にこの文書の規約を守っていただくことで、瑣末なC言語の文法的な規則を気にせずに付加価値を高めるための作業に専念していただくことを目的としています。

スポンサーリンク

対象とする人

組込みソフトウェアをC言語でコーディングをする開発者を対象にします。特にμITRONなどの RTOS を使った環境を想定しています。また、CPUはARM系などのRISC CPUを想定しています。ですがOSやCPUに依存するような内容はなく、基本的にC言語に関係することに絞って記載していますので、上記以外の環境でも十分に有用だと思います。

スポンサーリンク

書いていないこと

C言語の文法的なことのみを対象としているので、タスク設計やAPIの設計方針、プロジェクトでのネーミング規則などについては記載していません。また、括弧のつけ方やコメントのつけ方など、ソフトウェアの挙動に直接かかわらないことについてはあえて言及していません。実際のソフトウェアの挙動に直接かかわる注意事項にしぼって記載しています。

スポンサーリンク

参考文献

Japanese Industrial Standards
スポンサーリンク
nagayasu-shinyaをフォローする
スポンサーリンク
組込みエンジニアの思うところ