gpt4 book ai didi

c - C语言strtok有一些错误

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

我的代码有问题,我一直收到编译器错误:

error message : warning: assignment makes pointer from integer without a cast

我的代码很简单:

int i;
int arr1[8], arr2[8];
char test[] = "1|a|b;2|c|d;3|e|f";
char *split1, *split2;

split1 = strtok(test, ";");
for(i = 1; i <= 8; i++){
arr1[i] = split1;
split1 = strtok(NULL, ";");
printf("result=%s\n", arr1[i]);
}

当我修复编译器错误时,我的代码无法打印值,反之亦然!

最佳答案

error message : warning: assignment makes pointer from integer without a cast

您需要包含正确的原型(prototype),以便编译器了解函数返回的类型(否则它会假设它们返回 int)。

strtok() 的原型(prototype)在<string.h> .

#include <string.h>

split1=strtok(NULL,";"); // without a prototype
// the compiler assumes strtok() returns an int
// and complains about assigning the int to a pointer

关于c - C语言strtok有一些错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23130436/

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