我想從輸入行中提取一些字符串。該字符串看起來是這樣的:解析輸入行c
command 1 2 3 4 5
到目前爲止,我已經做到了這一點,但它不能正常工作:
if (strncmp(line,"command",7) == 0){
char *p = strtok(line," ");
while (p !=NULL){
param1 = atoi(p[1]);
param2 = atoi(p[2]);
param3 = atoi(p[3]);
param4 = atoi(p[4]);
param5 = atoi(p[5]);
p = strtok(NULL," ");
}
}
我在哪裏錯了?
你爲什麼要把p [x]的地址?您必須手動清空atoi函數的字符串才能正常工作 – Ulterior 2012-03-26 13:33:35
'strtok()'通過一次提供一個令牌來工作。對於多個令牌,您需要多次調用該函數。 – pmg 2012-03-26 13:36:16
strtok已棄用。看看使用strsep - 請參閱手冊頁。 – 2012-03-26 13:38:39