gpt4 book ai didi

c - c 中的字符串指针在用 * 写入时不起作用

转载 作者:行者123 更新时间:2023-11-30 19:33:37 24 4
gpt4 key购买 nike

我编写这个 C 程序是出于学习目的,我发现

printf("%s",a); 有效,但 printf("%s",*a); 不起作用。

我定义了a,如下所示char *a[]="how are you";

为什么*a没有指向字符串?

我收到此错误

test2.c: In function ‘main’:
test2.c:7:10: warning: format ‘%s’ expects argument of type ‘char *’, but argument 2 has type ‘int’ [-Wformat=]
printf("%s \n",*a);
~^ ~~
%d

最佳答案

这是未定义的行为,因为 %s printf 将 *a 解释为地址,但它实际上不是地址,如果您将它作为地址,指向您的程序受读保护的某个位置。所以,你可能会遇到段错误。

关于c - c 中的字符串指针在用 * 写入时不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45212532/

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