Я, должно быть, упускаю что-то очень простое, но у меня нет никаких подсказок.После запуска этого:
int main() {
char requete[] = {"205 7.3 data data\n"};
char codeUserReq[9];
char choixReq[3];
char donneeReq[200];
memset(codeUserReq, 0, 5);
memset(choixReq, 0, 3);
memset(donneeReq, 0, 200);
sscanf(requete, "%s %s %[^\n]", codeUserReq, choixReq, donneeReq);
printf("codeuser %s \n",codeUserReq);
printf("choix %s \n",choixReq);
printf("donnee %s \n",donneeReq);
Я ожидаю, что результат будет:
codeuser 205
choix 7.3
donnee data data
Вместо этого:
codeuser
choix 7.3
donnee data data
В Ubuntu этот код работает, ноне в Debian.
Первая строка прочитана неправильно.