Вы можете использовать strtok
для токенизации вашей строки на основе разделителя, а затем strcpy
указатель на токен, возвращенный в ваш массив name
.
Кроме того, вы можете использовать strchr
, чтобы найти местоположение запятой, а затем использовать memcpy
, чтобы скопировать части строки до и после этой точки в ваш массив name
. Этот способ также сохранит вашу исходную строку и не искажает ее, как strtok
. Это также будет более поточно-ориентированным, чем использование strtok
.
Примечание: поточно-ориентированной альтернативой strtok
является strtok_r
, однако она объявлена как часть стандарта POSIX. Если эта функция недоступна для вас, возможно, аналогичная функция определена для вашей среды.
РЕДАКТИРОВАТЬ: Другой способ заключается в использовании sscanf
, однако вы не сможете использовать спецификатор формата %s
для первой строки, вместо этого вам придется использовать спецификатор с набор символов, которые не совпадают (','
). Поскольку это домашнее задание (и очень простое), я позволю вам разобраться.
EDIT2: Кроме того, ваш массив должен быть char name[2][100]
для массива из двух строк, каждая размером 100 char
s. В противном случае, у вас будет массив из 100 строк, каждая размером 2 char
с.