Вы можете использовать strstr
для идентификации маркера mdn=
, а затем отсканировать число или строку.Обратите внимание, что для сканирования номера вам не нужно копировать соответствующее содержимое;Приведенный ниже код показывает, как:
const char* content = "GET /getUIKVal?mdn=9860436150 HTTP/1.1";
const char* startOfNumber = strstr(content,"mdn=");
if (startOfNumber) {
startOfNumber += strlen("mdn=");
long number;
if (scanf("%ld",&number)==1) {
printf("the number is... %ld", number);
} else {
printf("no valid number after 'mdn='");
}
} else {
printf("marker 'mdn=' not found.");
}
Я на самом деле предпочитаю решение strstr
, а не решение, где scanf
идентифицирует и маркер, и число, потому что тогда сложно рассуждать о синтаксических ошибках.