インターンシップ C++ コード ノート

1.ifndef

#ifndef は、「未定義の場合」の略で、前処理機能(マクロ定義、ファイルインクルード、条件付きコンパイル)における条件付きコンパイルです。実際の開発では、テストやバージョン違いなどに利用できます。適応です。 vscode では、json スクリプトの定義を通じて ifndef の値を定義したり、条件付きコンパイルのために gcc でコンパイルするときにマクロを追加したりできます。
#ifndef は、変数が定義されているかどうかに基づいて分岐選択を実行できます。その機能は次のとおりです:
– ヘッダー ファイルの繰り返しのインクルードとコンパイルを防止します。
– プログラムのデバッグと移植を容易にします。

参考リンク:https://blog.csdn.net/weixin_42692164/article/details/113368331

2.size_t データ型

size_tの説明

定義: size_t は、オブジェクトのサイズをメモリに格納できるのに十分な大きさになるように設計されたデータ関連の符号なし型です。
size_t は標準 C ライブラリで定義されており、unsigned int (メモリ空間の 4 バイトを占有) である必要があります。64 ビット システムでは、long unsigned int (メモリ空間の 8 バイトを占有) です。 .
intやlongと同様に整数を格納する「整数」型です。この整数はサイズを記録するために使用されます。 size_t の完全な名前は、「サイズを記録するために使用されるデータ型」を意味する size type にする必要があります。
通常、sizeof(XXX) 演算を使用し、この演算の結果は size_t 型になります。
配列の添字を介して配列にアクセスする必要がある場合は、通常、添字を size_t 型として定義することをお勧めします。これは、一般的に、添字アクセスを実行するときの添字は正であるためです。もちろん、次のコードのように、添字アクセス操作のすべての添字が正であるわけではありません。
int a[10]={1,2,3,4,5,6,7, 8 ,9,10};
int *ptr = &(a[4]);
cout<
このコードでは、ptr に添え字付きでアクセスしており、添え字がマイナスになっていますが、このアクセスは間違っていませんので、実行結果は 3 になります。

size_t の役割

場合によっては、size_t を正しく使用すると、プログラムの移植性と有効性が向上します。
パラメータに size_t を含む関数には、通常、配列のサイズを調整するためのローカル変数が含まれています。または計算用のインデックス。この場合は size_t が適切な選択です。
size_t を適切に使用すると、コードに独自のドキュメントが付属しているかのように感じられます。 size_t 型として宣言されたオブジェクトを見ると、それがエラー コードや通常の算術値ではなく、バイト単位のサイズまたは配列インデックスを表していることがすぐにわかります。

参考リンク:https://blog.csdn.net/sinat_39370511/article/details/91982771?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522168137452316800213036508%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=168137452316800213036508&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~baidu_landing_v2~default-2-91982771-null-null.142^v83^control,201^v4^add_ask,239^v2^insert_chatgpt&utm_term=C%2B%2B%E4%B8%AD%E7%9A%84size_t&spm=1018.2226.3001.4187

おすすめ

転載: blog.csdn.net/weixin_45112559/article/details/130133600