gpt4 book ai didi

c - 从 C 中的 char 数组中打印出字符串

转载 作者:行者123 更新时间:2023-11-30 20:59:29 26 4
gpt4 key购买 nike

我正在学习 C 编程,在打印存储在字符数组中的名称时遇到一些问题。

char nameArr[125];
for (int i = 0; i < 125; i++)
{
if (nameArr[i] != "\0")
{
printf(nameArr[i]);
}
else
{
i = 125;
}
}

这是我的代码,我在其中尝试打印出已经存储在 char 数组中的“Joe Doe”之类的名称,但是当我运行此代码时,编译器中出现一些错误。如果我不打算这样做,我怎样才能只打印名称而不打印数组的所有 125 个槽?

最佳答案

假设您的 nameArr 已包含一个字符串,该字符串被定义为以 0 结尾的字符序列,明显 解决方案是这样做

printf("%s", nameArr);

puts(nameArr); // appends newline automatically
<小时/>

如果您的问题是如何手动执行此操作,它看起来像这样:

for (size_t i = 0; nameArr[i]; ++i)
{
putchar(nameArr[i]);
// or printf("%c", nameArr[i]);
}
只要此 不是 0 字节,

nameArr[i] 的计算结果就为 true。另外,始终使用size_t作为数组索引。 int 不保证能够容纳 C 中对象可以具有的任何大小。

关于c - 从 C 中的 char 数组中打印出字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47387506/

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