我试图做一件简单的事,但无法弄明白。我正在对.csv文件中的数据进行令牌化并将其存储在一个结构中,但是我试图使用返回TRUE或FALSE天气的函数来验证数据是否有效输入。
基本上我希望这个函数在datapos = 1并且令牌中没有数字时返回TRUE。我的代码到目前为止....
ps:printf()仅用于调试目的。
int validCustData(int datapos, char *token) {
int valid = FALSE;
int pos;
switch (datapos) {
case 1:
pos = 0;
while (pos < SURNAME_MAX) {
printf("checking char %c\n", token[pos]);
if (isdigit(token[pos])) {
break;
}
if (token[pos] == '\0') {
valid = TRUE;
break;
}
pos = pos + 1;
}
break;
}
return valid;
}
似乎永远不会输入声明&#39; if(token [pos] ==&#39; \ 0&#39;)&#39;这不是结束令牌的角色吗?如果不是哪一个决定了令牌的结束?或者我怎么能达到这个效果?谢谢。
答案 0 :(得分:0)
清理了随机的代码后,它现在正在工作,我不知道为什么它之前没有,它似乎只是缓冲错误。但这个功能完全没有任何变化现在正在发挥作用。抱歉浪费时间。