gpt4 book ai didi

c - 如何在c中打印指针?

转载 作者:太空狗 更新时间:2023-10-29 15:52:31 25 4
gpt4 key购买 nike

有人可以向我解释为什么这段代码会出现段错误吗:

char string[] = "this is a string";
char * string2 = "this is another string";
printf("%s\n",string );
printf("%s\n", string2);
printf("string[2]= %s, string2 = %s\n", string[2], &string2 );

当我尝试打印时它也给出同样的错误

*string2 or *string2[2] or &string2[2]

我真的很困惑,同样我在网站上看到的例子似乎打印出来了,但不是这个。

最佳答案

前两个很好,但您可能需要最后一个:

printf("string[2]= %c, string2 = %p\n", string[2], (void *)&string2 );
^ ^

您遇到段错误是因为您欺骗 printf 将小整数 (string[2]) 解释为指针(这就是 %s 预计)。

关于c - 如何在c中打印指针?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19188028/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com