hi У меня есть этот код на языке C: это разделение строки на токены, но то, что я хочу, это то, что токены получают хранилище в разных переменных например: а [] = + 5000 б [] = - 9000 с [] = 7HH4 d [] = 0, потому что после последней запятой я хочу, что пространство для переменнойКак я могу разделить строку на токены и хранить токены в разных переменных, язык C
#include <stdio.h>
#include <string.h>
int main()
{
char str[] = "+5000,-9000,7jj4,";
// Returns first token
char *token = strtok(str, ",");
// Keep printing tokens while one of the
// delimiters present in str[].
while (token != NULL)
{
printf("%s\n", token);
token = strtok(NULL, "-");
}
return 0;
}
Вы можете использовать 'strcpy()' токен в любом достаточно большом массиве, или вы можете его дублировать ('strdup()', если он у вас есть; 'malloc()' + 'strcpy()', если вы не нужно), если вам нужно выделить пространство для него динамически. Вы также можете сохранить указатель на токен, если хотите сохранить исходную строку без изменений. Если это не ответит на вопрос, тогда вам нужно будет уточнить, в чем вопрос. –
Об изменениях в вопросе: 'strtok' не создает' '' 'как токен. – BLUEPIXY