Qubc
@Qubc
Ненавижу полисемию.

Как дословно переводится assignment makes pointer from integer without a cast?

Или initialization makes pointer from integer without a cast ?
Почему from? Почему makes, а не does или uses, например? Почему не assignment is make ?
  • Вопрос задан
  • 2632 просмотра
Решения вопроса 1
@TheCalligrapher
Дословно это можно перевести как "присваивание делает/формирует указатель из целого [значения] без [использования] явного приведения типа".

Термин "cast" в С означает явное приведение типа. Именно явное.

Сочетание "makes [...] without a cast" ссылается на то, что ваш оператор присваивания пытается выполнить именно неявное преобразование из указателя к целому значению.

Все сообщение означает, что в своем коде использован оператор присваивания (assignment), правая часть которого является указателем (pointer), а левая - целым числом (integer).

Такой код является некорректным в С, ибо язык С в общем случае запрещает неявные преобразования между целыми числами и указателями. Чтобы преобразовать целое значение к указателю в С требуется явное приведение типа, т.е. cast.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы