Я пишу программу на C на Debian Linux x64. В части кода у меня есть следующее утверждение if:
if (*all_drops >= (npes * 128)) {
break;
}
all_drops
- это int*
, которому присвоено значение памяти int
, а npes
- это int
со значением 2. Следовательно, оператор if должен быть истинным, когда значение в all_drops
- не менее 256. Однако у меня была переменная выше 1000 без оператора if, оценивающего true.
Я не уверен, есть ли какой-то нюанс в сравнении разыменованных указателей с другими числами, но я искал в Google и не смог найти каких-либо подобных проблем (что наводит меня на мысль, что я что-то упустил). Буду очень признателен за любую помощь.