【面接論述】constの役割、使用例を#defineに連絡する
constの役割:
a.使用習慣は、変数の値が変更されない場合は、宣言時に加算しなければならない.
b.このキーワードは変数、関数の戻り値、形式パラメータなどを修飾し、修正できないことを表すことができる.
c.プログラムの頑丈性を高める.たとえば、
constの使用:
int const a;
const int a;
いずれも整形変数aの値が変更できないことを示す.
int const *pa;
ポインタが指す値は変更できませんが、ポインタ変数の値は変更できます.
int *const pa;
ポインタ変数を表す値は変更できませんが、ポインタ変数を指す値は変更できます.
int const * const pa;
最初のconst修飾*paは、ポインタ変数を指す値が変更できないことを示します.
2番目のconst修飾paは、ポインタ変数の値が変更できないことを示します.
#defineはconstの代わりに使用でき、constよりも優れています.理由は次のとおりです.
#defineは文字定数であれば使用できますが、constは変数のある場所でしか使用できません.
配列の長さを宣言するには、次のようにします.
a.使用習慣は、変数の値が変更されない場合は、宣言時に加算しなければならない.
b.このキーワードは変数、関数の戻り値、形式パラメータなどを修飾し、修正できないことを表すことができる.
c.プログラムの頑丈性を高める.たとえば、
char* strcpy(char* dest,const char* src)
constの使用:
int const a;
const int a;
いずれも整形変数aの値が変更できないことを示す.
int const *pa;
ポインタが指す値は変更できませんが、ポインタ変数の値は変更できます.
int *const pa;
ポインタ変数を表す値は変更できませんが、ポインタ変数を指す値は変更できます.
int const * const pa;
最初のconst修飾*paは、ポインタ変数を指す値が変更できないことを示します.
2番目のconst修飾paは、ポインタ変数の値が変更できないことを示します.
#defineはconstの代わりに使用でき、constよりも優れています.理由は次のとおりです.
#defineは文字定数であれば使用できますが、constは変数のある場所でしか使用できません.
配列の長さを宣言するには、次のようにします.
#define MAXSIZE 1000
int arr[MAXSIZE] = {0};
int const maxsize= 1000;