я нашел следующее утверждение в коде, который я не совсем понимаю:Objective C UInt32 Определение
UInt32 *pixels;
UInt32 *currentPixel = pixels;
UInt32 color = *currentPixel;
Первые две строки для меня ясно, как эти определения объектов uint32, пикселей и currentPixel. Но линия после не имеет смысла для меня честно. Почему это не так:
UInt32 *color = currentPixel
но
UInt32 color = *currentPixel
Какая разница в этом?
Если я удалить * из currentPixel я получаю сообщение: Несовместимые указатель на целое преобразование инициализации «UInt32» (он же «неподписанных Int») с выражением типа «UInt32 *» (он же 'неподписанных INT *) ; разыменование с *
Что означает разыгрывание с * означает?
Спасибо
Почему вы используете указатели здесь? 'UInt32' - это примитивный тип, а не тип класса. – rmaddy
Исходный код: UInt32 * pixels; пикселей = (UInt32 *) calloc (высота * ширина, sizeof (UInt32)); – sesc360
Код использует ее указатели ... и я не знаю, что назначает * currentPixel – sesc360