gpt4 book ai didi

c - 当strtok返回NULL时如何继续从文件中读取

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

我有一个文本文件:

hdsf5 sd3 htf2

使用指针 a、b、c 并对它们进行 strtoking 效果很好......但是

读取这样的行对于我的代码来说没问题,但是如果这样缺少“sd3”怎么办:

hdsf5 htf2

即使在这种情况下指针将返回 null,我将如何继续从文件中读取数据。

一个简单的 if (b == NULL) 会吗(哪里是一个指针就足够了?

编辑:我有这样的代码:

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main (int argc, char * argv[])
{
FILE * ptr;
char str[100];
char * a, * b, * c;
//while loop using fgets...
// strtok each one...

//convert each one to an integer using (atol())
//this is where the seg fault/problem occur
}

最佳答案

我认为您在这里混合了概念:strtok 适用于 const char * 字符串。
您可以通过 fscanffreadfgets 等读取文本文件来获取字符串。

strtok返回NULL时,这意味着您的字符串中不再有标记,但这并不意味着您不能继续读取文件(即获取新的字符串进行标记化):返回值fscanf 等会告诉你。

关于c - 当strtok返回NULL时如何继续从文件中读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28989165/

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