TRUE - это число (равное 1 по значению), а setRowSwapped, похоже, ожидает какой-то указатель как аргумент. Таким образом, компилятор преобразует значение int 1 в указатель, что является предупреждением, потому что это вряд ли когда-либо правильно, и если бы оно было правильным, и вы знали бы, что делаете, вы использовали явное литье, которое также избегает предупреждение. Синус, который вы не использовали, вы, вероятно, ожидали, что метод ожидает логический аргумент, и это кажется неправильным.
BTW, так как это Objective-C, вы не должны использовать TRUE/FALSE в Objective-C, но ДА/НЕТ. Разница заключается в том, что TRUE/FALSE имеет тип bool (все строчные буквы, такие же, как _Bool или boolean_t на Mac), и это обычно обычно имеет тип int и 4 байта (по крайней мере, на PPC и Intel, возможно, не соответствует другим устройствам Apple , как iPad). YES и NO имеют тип BOOL (весь верхний регистр), и этот тип составляет 4 байта на PPC и 1 байт на Intel. Таким образом, bool и BOOL не всегда одинаковы, и в некоторых очень редких условиях это может действительно вызвать проблемы. Поэтому вы не должны смешивать их. В коде Obj-C используйте BOOL и YES/NO, в C-коде, используйте bool, boolean_t или _Bool и TRUE/FALSE.
Отсортируйте свой код в следующий раз. –
@ Карл. Он, очевидно, не знал, как; следовательно, теги '[CODE]'. @TheLearner Есть кнопка «Пример кода» над текстовым полем вопросов, вы можете использовать –
@Michael, так как на экране появляется окно «Как отформатировать» на все время, когда кто-либо пишет вопрос, это вряд ли оправдание. –