プログラミング– category –
-
C++
[C/C++] 二重インクルードによる型の再定義を防止する方法(インクルードガード)
プログラムの規模が大きくなってくると、ヘッダーがヘッダーをインクルードするような場面が発生してきます。このとき、複数のヘッダーをインクルードした場合に、型の再定義が発生してビルドエラーになる場合があります。このような場合を予め想定して、... -
C言語
[C言語 標準ライブラリ] assert.hの使い方
マクロ NDEBUG #include <assert.h>では定義されません。NDEBUGを定義すると、後述するassertマクロ関数を無効にすることができます。Visual Studioでは、リリースモードの場合にプリデファインとして定義されます。デバッグモードの場合は定義され... -
プログラミング
[C++/STL] std::stringクラスの使い方
std::stringはC++標準ライブラリ(STL)の文字列クラスです。char型の配列を使うよりとっても便利になりました。メモリのalloc/freeを自動でやってくれます。 ここでは、よく使う機能に絞って説明します。より詳しく知りたい人はcpprefjpで勉強することをお... -
C++
[C/C++] switch文のインデントの付け方
switch-caseのcaseはインデントする派?しない派? switch文のインデントってどうしてますか? よく教本では、下記のソースコードのように、caseにインデント付けていますよね。 switch(data){ case 0: break; case 1: break; default: break; } 古い書籍... -
C言語
C言語入門を作成しました!
C言語入門者、プログラミング初学者向けに、C言語の重要な部分に絞った解説ページを作成しました。(細かい部分はだいぶ端折りました) C言語入門のTOPページ まだまだわかりくい部分がたくさんあると思いますが、少しずつ改善して良い入門講座にしていき...