#include <stdio.h>
int main( void )
{
char str[] = "kitty on your lap";
char* a = NULL;
/* char* 型のポインタ、というイメージ */
char* *b = NULL;
/* char* と char[] はシンタックスシュガー */
a = str;
b = &a;
/* 出力 */
printf( "%s\n%s\n%s\n", str
, a
, *b
);
/* char* と char[] は同じ(シンタックスシュガー)
* -> char* 型は一次元配列として表現できる
*/
/* 上と同様に
* char** と char[][] は同じ(シンタックスシュガー)
* -> char** は二次元配列で表現できる
*/
/*
* たとえば、変数xがあったとして
* 一次元配列の先頭アドレスは *x のように表される
* 二次元配列の最初の要素の先頭アドレスは ( *x )[ 0 ] と表される
*/
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgppbnQgbWFpbiggdm9pZCApCnsKCWNoYXIgc3RyW10gPSAia2l0dHkgb24geW91ciBsYXAiOwoJY2hhciogYSA9IE5VTEw7CgkKCS8qIGNoYXIqIOWei+OBruODneOCpOODs+OCv+OAgeOBqOOBhOOBhuOCpOODoeODvOOCuCAqLwoJY2hhciogKmIgPSBOVUxMOwoKCS8qIGNoYXIqIOOBqCBjaGFyW10g44Gv44K344Oz44K/44OD44Kv44K544K344Ol44Ks44O8ICAqLwoJYSA9IHN0cjsKCWIgPSAmYTsKCQoJLyog5Ye65YqbICovCglwcmludGYoICIlc1xuJXNcbiVzXG4iLCBzdHIsIGEsICpiICk7CgkKCS8qIGNoYXIqIOOBqCBjaGFyW10g44Gv5ZCM44GY77yI44K344Oz44K/44OD44Kv44K544K344Ol44Ks44O877yJCgkqIC0+IGNoYXIqIOWei+OBr+S4gOasoeWFg+mFjeWIl+OBqOOBl+OBpuihqOePvuOBp+OBjeOCiwogCSovCglwcmludGYoICIlY1xuIiwgc3RyWzJdICk7CglwcmludGYoICIlY1xuIiwgYVsyXSApOwoJCgkvKiDkuIrjgajlkIzmp5jjgasKCSogY2hhcioqIOOBqCBjaGFyW11bXSDjga/lkIzjgZjvvIjjgrfjg7Pjgr/jg4Pjgq/jgrnjgrfjg6Xjgqzjg7zvvIkKCSogLT4gY2hhcioqIOOBr+S6jOasoeWFg+mFjeWIl+OBp+ihqOePvuOBp+OBjeOCiwoJKi8KCXByaW50ZiggIiVjXG4iLCBiWzBdWzJdICk7CgkKCS8qCgkqIOOBn+OBqOOBiOOBsOOAgeWkieaVsHjjgYzjgYLjgaPjgZ/jgajjgZfjgaYKCSog5LiA5qyh5YWD6YWN5YiX44Gu5YWI6aCt44Ki44OJ44Os44K544GvICp4IOOBruOCiOOBhuOBq+ihqOOBleOCjOOCiwoJKiDkuozmrKHlhYPphY3liJfjga7mnIDliJ3jga7opoHntKDjga7lhYjpoK3jgqLjg4njg6zjgrnjga8gKCAqeCApWyAwIF0g44Go6KGo44GV44KM44KLCgkqLwoJcHJpbnRmKCAiJWNcbiIsICggKmIgKVsyXSApOwoJCglyZXR1cm4gMDsKfQo=