有大佬遇到过这个问题吗:C语言typedef用法问题谢谢哈~

碰到个题,求大佬指点..题:设typedefcharSTRING[255];STRING*s;,则s是()A.字符数组B.字符变量C.字符指针数组D.字符指针变量
答案是C,为啥不是D呢?这里的指针s是怎么指向数组的啊?
Helenr
浏览 228回答 2
2回答

烙印99

答案是,指向字符数组的指针变量。它也不是一个字符指针的数组。typedefcharSTRING[255];intmain(){chararr[255];//指向字符数组的指针//arr是字符数组//s中保存了字符数组的地址//相当于char(*s)[255]STRING*s;s=&arr;//字符指针的数组//数组的每个元素是一个字符指针charch='a';char*ptr_arr[255];ptr_arr[0]=&ch;return0;}

HUX布斯

STRING为有255个char元素的数组,STRING*s则为指向有255个char*元素的数组,其中每个char*都指向char[255]typedefcharSTRING[255];STRING*s;STRING*s等价(*s)char*[255];使用typeinfo打印变量类型#include#includeusingnamespacestd;typedefcharSTRING[255];intmain(){STRINGs1={0};STRING*s2;cout
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript