gpt4 book ai didi

c - 为什么我的字符串在 C 语言中显示美元符号

转载 作者:行者123 更新时间:2023-11-30 20:08:49 25 4
gpt4 key购买 nike

好的,所以我正在学习 C 教程,然后我输入了

char name[4] = "foo";
name[1] = "z";
printf("%s",name);

输出:

f$o

为什么有美元符号?我期待那里有一个“z”

最佳答案

char name[4] = "foo";
name[1] = "z";

name 是一个 char 数组,但您分配了一个 char*,因此您获得了它的地址的一部分,随机生成 '$'

将第二行替换为

name[1] = 'z';

令人惊讶的是,当您编译该行时没有收到警告

我鼓励您使用选项-Wall -Wextra -pedantic进行编译

关于c - 为什么我的字符串在 C 语言中显示美元符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55325579/

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