c语言用scanf输入字符串

2020-11-02 国际 144阅读
有了char a[10];,那么a就是这个数组的第一个元素的指针,&a就是这个数组的指针;因为一维数组的第一个元素的指针和这个数组的指针是同一个地址,区别是a+1指向a[1],而&a+1就指向a[10]了(这里已越界了)。但&a和a的"值"是相同的,只是类型不同。C调用函数时,实参的类型都会被强制为形参的类型,scanf("%s", &a)或scanf("%s", a)中要求参数是char *型指针,那么&a尽管是char **类型,但被强行转换为char *型了……
声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com