我必须用这种格式标记一个字符串:
pippo:c:C2,C3,C4:pippo
Run Code Online (Sandbox Code Playgroud)
如何使用strtok对此字符串进行标记(一旦我完成标记,我就不需要字符串).我希望将单个字符存储到char变量中而不是char*变量中.
如果你只想要c:part中的c,并且你知道事情将具有这种格式,那么你就不必像标记化一样.你可以干脆做
char c = strchr(str, ':')[1];
Run Code Online (Sandbox Code Playgroud)
这将找到第一个:,并获取其后的字符.当然,strtok也可以:
strtok(str, ":");
char c = strtok(NULL, ":")[0];
Run Code Online (Sandbox Code Playgroud)
这将获取第二个标记化单词,并获取该单词的第一个字符.一般来说,如果你想要进一步的东西,你可能想要使用循环.在这种情况下,str缓冲区必须是可写的,与其他缓冲区不同.
最后,如果pippo零件总是具有相同的长度,您可以简单地逃脱
char c = str[6];
Run Code Online (Sandbox Code Playgroud)
在所有情况下,str = "pippo:c:C2,C3,C4:pippo".