У меня есть фрагмент кода, где я вижу предупреждение, говорящее
Я делаю сравнение между знаком и числом без знака.
Что-то вроде int <= CONSTANT / sizeof (выражение) </strong>
Каков наилучший способ исправить это?Я считаю, что нужно взять модуль числа со знаком, а затем сделать сравнение, верно?Я имею в виду, я получаю число без знака после деления на оператор sizeof в выражении.Таким образом, другой способ мог бы сделать это rhs подписанным
Если так, то есть ли функция в c, которая позволила бы мне сделать это?Я сделал быстрый поиск, и они говорят% по модулю, что явно не то, что я ищу.
Это собственное предупреждение
предупреждение: сравнение между целочисленными выражениями со знаком и без знака
и это фактическая строка кода
functionA (......, int num, .....) {
assert (num <= MAX_SIZE / sizeof (int)); // где MAX_SIZE равно #define MAX_SIZE 1000 </p>
}