gpt4 book ai didi

c - 奇怪的行为 printf - c lang

转载 作者:太空宇宙 更新时间:2023-11-04 06:19:04 25 4
gpt4 key购买 nike

我最近试图编写一个程序来转义字符串中的转义序列。一切看起来都很好,当我测试程序时还没有错误消息,没有任何打印。

#include <stdio.h>

#define MAXLINE 1000

void escape(char s[], char t[]);

int main () {
char s[MAXLINE], t[MAXLINE];
int i, c;
for (i = 0; (c = getchar()) != EOF; i++)
c = s[i];
s[i] = '\0';
escape(s, t);
printf("%s\n",t);
return 0;
}

void escape(char s[], char t[]) {
int j = 0, i;
for (i = 0; s[i] != '\0'; i++) {
switch (s[i]) {
case '\n':
t[j] = '\\';
t[++j] = 'n';
++j;
break;
case '\t':
t[j] = '\\';
t[++j] = 't';
++j;
break;
default:
t[j] = s[i];
++j;
break;
}
}
t[j] = '\0';
}

谢谢。

最佳答案

main 函数中的 for 循环应该是:

for (i = 0; (c = getchar()) != EOF; i++)
s[i] = c;

关于c - 奇怪的行为 printf - c lang,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39188194/

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