я, наверное, проклят
Mar. 21st, 2012 12:02 am![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Перестало получаться даже самое элементарное. Что глючит? или это я окончательно сошёл с ума?
Дано: в буфере buffer лежит строка ASCII, содержащая три целых числа (в виде их записи), то есть, например,
Скармливаю её
На выходе получаю, что n, I и Q равны соответственно 6, 0 и 0.
Скармливаю другую строчку:
Получаю 7, -1 и -251
Такое ощущение, что вот именно второе число считываться упорно не хочет. Что это? Как это?! Всегда работало и вдруг такое...
Мало того, поведение программы ещё и зависит от того, с какими флагами оптимизации её скомпилить! Например, если оптимизацию отключить совсем, тогда ещё и первое число не воспринимается - читается либо 0, либо 65535. Бред какой-то.
Дано: в буфере buffer лежит строка ASCII, содержащая три целых числа (в виде их записи), то есть, например,
6 -236 0
Скармливаю её
sscanf (buffer, "%lu %d %d", &n, &I, &Q);
На выходе получаю, что n, I и Q равны соответственно 6, 0 и 0.
Скармливаю другую строчку:
7 0 -251
.Получаю 7, -1 и -251
Такое ощущение, что вот именно второе число считываться упорно не хочет. Что это? Как это?! Всегда работало и вдруг такое...
Мало того, поведение программы ещё и зависит от того, с какими флагами оптимизации её скомпилить! Например, если оптимизацию отключить совсем, тогда ещё и первое число не воспринимается - читается либо 0, либо 65535. Бред какой-то.
no subject
Date: 2012-03-20 10:42 pm (UTC)какого типа переменные n, I, Q?
(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2012-03-21 05:06 am (UTC)(no subject)
From: