我是C语言的新手,需要解析作为函数指针传递给函数的字符串“ var1 = bob&var2 = j”。我只想返回一个字符数组,例如[“ bob”,“ smith”]。
我在使用C语法时遇到了麻烦,并且在这种情况下,无法通过解析成功地循环输入并提取出“ bob”和“ smith”。我一直在尝试弄乱strtok(),但是没有成功。
如果有人可以在这里帮助我,将不胜感激。
谢谢。
由于分隔符正在更改(&var2 =,&var3 =),因此strtok将不起作用。
打印名称的基本程序很简单。
int main() {
char* str = "var1=bob&var2=smith";
// iterate all characters
for (int i = 0; i < str[i] != '\0'; i++) {
// if equal is found, you have your word
if (str[i] == '=') {
// keep iterating the characters upto & or \0
for (int j = i+1; str[j] != '\0' && str[j] != '&'; j++) {
printf("%c", str[j]);
}
printf("\n");
}
}
return 0;
}
您将需要创建一个char *数组来存储这些名称。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句