ファイル名等を読み込ませる場合の、文字列配列に関して

ファイル名を読み込ませる場合以下の2つの手順で実施できます。

 

char filename[128] = "/proc/meminfo";

 

char *filename = "/proc/meminfo";

 

さて違いに関してですが

filename[128]は配列による文字列です。

下は、ポインタによる文字列です。

 

配列による文字列はそのまま文字列を配列に代入している。

下のポインタによる文字列は、最初の配列には、文字列がある

アドレスを代入している。

 

ちなみにサイズ的には配列のほうが小さいです。

 

参考:

柴田望洋 ポインタ完全攻略 P128