gpt4 book ai didi

c - 在 C 编程中对字符串进行标记

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

我是 C 编程新手,我知道还有其他关于如何将字符串拆分为单词的解释,但没有一个与我的程序相似。我很难找到程序中的错误:

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

int tokenise(char str[], int start, char result[]) {
if (str[start] == "/o") {
return -1;
} else {
result = str[start];
}
}


int main() {
const int MAX_STRING = 256;
char buffer[MAX_STRING];
fgets(buffer, MAX_STRING, stdin);
char result[256];
int start;
start = tokenise(buffer, 0, result);

while ( start != -1 ) {
printf("%s\n", result);
start = tokenise(buffer, start, result);
}
}

最佳答案

在你的函数中标记化 -

if(str[start] == "/o"){

你比较的"/o"是什么?它应该是'\0'

if(str[start] == '\0'){

else中,您的函数不会返回任何内容,因此,在这种情况下,UB。

您的函数没有任何循环或使用递归来迭代数组,因此,您的逻辑似乎没有实现任何接近的目标。

关于c - 在 C 编程中对字符串进行标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33125943/

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