gpt4 book ai didi

反转字符串的概念错误。知道其他逻辑但想知道我哪里出错了

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

#include<stdio.h>
#include<string.h>
#include<stdlib.h>

void main() {
int i, j, k=0;
int len;
char *rev[3];
char *s[]={
"To err is human...",
"But to really mess things up...",
"One needs to know c!!"
};
for (i=0; i<3; i++) {
len=strlen(s[i]);
rev[i]=malloc(strlen(s[i])+1);
for (j=len-1; j>=0; j--) {
rev[i][k]=s[i][j];
k++;
}
rev[i][k]='\0';
}
for (i=0; i<3; i++)
printf("%s\n", rev[i]);
}

此程序编译正常但无法运行。谁能指出逻辑错误或概念错误?我在这里尝试反转字符串...

最佳答案

问题似乎是您没有将每个字符串的 k 重置为 0(仅在程序开头)。所以你应该在内部 for 循环之前有 k = 0;

关于反转字符串的概念错误。知道其他逻辑但想知道我哪里出错了,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21285436/

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