Как изменить суперпредставление, чтобы оно соответствовало всем подпредставлениям с autolayout?

В C89 и C99 строковые литералы имеют тип char * (по историческим причинам, насколько я понимаю). Вы правы, что пытаетесь изменить один результат в неопределенном поведении. GCC имеет специальный предупреждающий флаг, -Wwrite-strings (который не является частью -Wall), который предупредит вас, если вы попытаетесь это сделать.

Что касается argv, аргументы копируются в адресное пространство вашей программы и могут быть безопасно изменены в вашей функции main().

EDIT: Упс, если -Wno-write-strings скопирован случайно. Обновлен с правильной (положительной) формой предупреждающего флага.

140
задан giampaolo 26 June 2014 в 16:22
поделиться