>>105
まあ、本については自分にとって読み易いもので良いかと思われ。
とりあえず、サンプルソースを1本。
参考にしてもらえれば、幸い。

(1)通常の変数定義の場合
#include <stdio.h>
int main(void) {
char strTest[100] = {"これはテストソース1"};

printf("%s\n", strTest);
return 0;
}

(2)ポインタ定義の場合
#include <stdio.h>
int main(void) {
char *pTest = {"これはテストソース2"};

printf("%s\n", pTest);
return 0;
}

上記の(1)、(2)は共に同じ意味を持っている(無論、領域容量は違うが)。