还如何使用C语言中的指针定义字符串?

问题描述 投票:-2回答:1

您认为发生了什么事名为name的指针如何获取字符串的大小?请逐步澄清

main()
{ char *name;
 scanf("%s",name);
printf("hi %s ! \n",name);
c string pointers input scanf
1个回答
0
投票

在C中,字符串的大小不会存储在任何地方(除非您这样做)。>

“字符串”,实际上是字符数组,以值0('\0')结尾。

这是一个约定。

[C0等库函数希望字符数组在某个点上具有字节0,以标记字符串的结尾。

代码

printf

将在内存中转换为

char *name = "hekal";

最后一个------------- |h|e|k|a|l|0| ------------- 是字节0(整数0),而不是ASCII字符0

© www.soinside.com 2019 - 2024. All rights reserved.