Я хочу разделить «строку» на символ «,». Строка содержит строку в кодировке GPS NMEA, но это не имеет значения.
Моя проблема в том, что иногда параметр из функции, которая обрабатывает этот массив символов, пуст... Как будто в массиве ничего нет.
Как мне правильно передать «строку символов []» функции, чтобы я мог работать с этим параметром, как я его отправил (как массив символов, а не указатель символов на массив).
Мне также нужно указать, что я использую mikroC для PIC.
Вот мой код на данный момент:
char* GPS_sateliti;
char CsatInView[] =
"$GPGSV,3,2,11,14,25,170,00,16,57,208,39,18,67,296,40,19,40,246,00*74";
GPS_sateliti = GrupeazaDupaVirgule(CsatInView, 2);
char* GrupeazaDupaVirgule( char deGasit[],int nrVirgule ){
int cVirgule = 1;
char* pch = strtok (deGasit,",");
while (pch != 0)
{
pch = strtok (0, ",");
cVirgule++;
if(nrVirgule == cVirgule){
break;
}
}
return pch;
}
Функция, которая работает с массивом символов, полученным в качестве параметра в режиме отладки, до входа в функцию массив символов в порядке, после входа он как бы пустой
Может быть, я должен получить указатель на массив символов?? Любые советы приветствуются. Спасибо
strtok
изменяет строку, которую она размечает (см. этуstrtok
ссылку для получения дополнительной информации). Может ли это быть проблемой? - person Some programmer dude   schedule 01.06.2017