gpt4 book ai didi

c - 为什么2个输出不同?

转载 作者:太空宇宙 更新时间:2023-11-04 02:32:23 24 4
gpt4 key购买 nike

<分区>

我正在写入一个字符数组,但是当我打印时,我得到了 2 个不同的输出。我知道这是很多代码,但如果可以的话 - 请试着找出为什么我每次都得到不同的输出...第一个代码:

int len = strlen(oldStr);
int i = 0;
char c;

while (i < len - 1)
{
c = *(oldStr + i);

if (isSpace(c)) {
c = *(oldStr + i + 1);

if (!isSpace(c)) {
*(newStr + i) = '\0';
printf(" ");
}
} else {
*(newStr + i) = c;
printf("%c", *(newStr + i));
}

i++;
}
*(newStr + i) = '\0';
*(newStr + i + 1) = '\0';

当我在此处打印时,它会按应有的方式打印整个字符串列表。

但是,当我用它来打印时:

for (i = 0; !(*(newStr + i) == '\0' && *(newStr + i + 1) == '\0'); i++) {
if (*(newStr + i) == '\0')
printf(" ");
else
printf("%c", *(newStr + i));
}

它只打印部分字符串。

例如:“一二三四\n\t五六”
第一个代码打印“一二三四五六”
第二个代码打印“一二三”

为什么?

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