anonymous
написал 26 сентября 2005 года в 11:03 (811 просмотр)
Ведет себя
неопределенно; открыл 1814 темы в форуме, оставил 5575 комментариев на сайте.
char buff[30];
char *ind;
int xind;
fgets(buff,20,stdin); //читаем ввод с консоли 3x-2y=0
printf("\n%s\n",buff);
ind=strtok(buff,"x"); // выделяем все что до x (т.е. 3)
// и помещяем в ind
printf("\n%s\n",buff);
xind=atoi(ind); // записываем 3 в xind
//for(c=0;c<=strlen(buff);c++) buff[c]=buff[strlen(ind)+c];
после выполнения на экране:
3x-2y=0
3
Как видно второй printf вывел 3. Почему ? Должно же быть 3x-2y=0 ???
Последние комментарии
-
OlegL, 17 декабря 2023 года в 15:00 →
Перекличка
21
-
REDkiy, 8 июня 2023 года в 9:09 →
Как «замокать» файл для юниттеста в Python?
2
-
fhunter, 29 ноября 2022 года в 2:09 →
Проблема с NO_PUBKEY: как получить GPG-ключ и добавить его в базу apt?
6
-
Иванн, 9 апреля 2022 года в 8:31 →
Ассоциация РАСПО провела первое учредительное собрание
1
-
Kiri11.ADV1, 7 марта 2021 года в 12:01 →
Логи catalina.out в TomCat 9 в формате JSON
1
DevOps as a Service from Palark
24/7 SRE & DevOps service to cover all your Kubernetes needs.

strtok 'затирает’ — ставит 0 на мести токенов. Это написано в man
пропустил …..
спасибо !