5
我試圖使用strtok()
解析字符串;我試圖解析由分號(;)分隔的字符串。但是當我輸入一個沒有分號的字符串到strtok()
時,它會返回整個字符串。如果沒有令牌匹配,它不應該返回NULL
嗎?Strtok(),沒有令牌匹配
這是我的代碼:
int main(int argc, char** argv)
{
char cmd[] = "INSERT A->B B->C INSERT C->D";
char delim[] = ";";
char *result = NULL;
result = strtok(cmd,delim);
if(result == NULL)
{
printf("\n NO TOKENS\n");
}
else
{
printf("\nWe got something !! %s ",result);
}
return (EXIT_SUCCESS);
}
輸出是:我們得到的東西! INSERT A-> B B-> c將C-> d
'如果沒有令牌匹配,它不應該返回NULL嗎?'N o。整個字符串是一個令牌匹配。 –
如果您正在搜索';'而不是令牌,請嘗試'strchr'。 – ams