Size: a a a

2020 August 15

A

Alex Ф-ф-фэils!🌠︙... in supapro.cxx
Древний баян
источник

A

Alex Ф-ф-фэils!🌠︙... in supapro.cxx
Оно в етw может срать
источник

ПК

Побитый Кирпич... in supapro.cxx
Danya
А тоже самое про clang тебя не смутило?)
Он даже официально поддерживается в Visual Studio
Уже все компиляторы поддерживаются в студии
источник

ПК

Побитый Кирпич... in supapro.cxx
В том числе gcc на линуксе
источник

К

Коля🤔🎭 in supapro.cxx
Переслано от Коля🤔🎭
char str[4] = "rya";
strcpy(str, "nya"); // work

char* pstr = "rya";
strcpy(pstr, "nya"); // not work

Чаво?
источник

К

Коля🤔🎭 in supapro.cxx
Разве строка не хранится в секции, где на нее и указывает pstr?
источник

SK

Stas Koynov in supapro.cxx
Коля🤔🎭
Переслано от Коля🤔🎭
char str[4] = "rya";
strcpy(str, "nya"); // work

char* pstr = "rya";
strcpy(pstr, "nya"); // not work

Чаво?
char* pstr = "rya"; "rya" это константа! она храниться в текст секции. тобишь на флэшке. просто для случая char str[4] = "rya"; у тебя был синтаксический сахар, компилятор видя что это массив и не конст. то поместил в секцию data.
источник

ПК

Побитый Кирпич... in supapro.cxx
Коля🤔🎭
Переслано от Коля🤔🎭
char str[4] = "rya";
strcpy(str, "nya"); // work

char* pstr = "rya";
strcpy(pstr, "nya"); // not work

Чаво?
Второй вариант вообще не компилируется
источник

VS

Vladimir Suisei in supapro.cxx
Побитый Кирпич
Второй вариант вообще не компилируется
В сишке должен скомпилиться
источник

К

Коля🤔🎭 in supapro.cxx
Побитый Кирпич
Второй вариант вообще не компилируется
У меня MSVC, компилится
источник

VS

Vladimir Suisei in supapro.cxx
Коля🤔🎭
Разве строка не хранится в секции, где на нее и указывает pstr?
Строка хранится в ридонли месте
источник

VS

Vladimir Suisei in supapro.cxx
Там должен быть const char *
источник

К

Коля🤔🎭 in supapro.cxx
Даже если char*, а не const char* ?
источник

VS

Vladimir Suisei in supapro.cxx
Коля🤔🎭
Даже если char*, а не const char* ?
От того что ты не написал конст, менее ридонли она не становится
источник

К

Коля🤔🎭 in supapro.cxx
Vladimir Suisei
От того что ты не написал конст, менее ридонли она не становится
Ясненько)
источник

ПК

Побитый Кирпич... in supapro.cxx
Коля🤔🎭
Даже если char*, а не const char* ?
Тип литерала const char[]

В данный момент у тебя ub т.к. ты пишешь в конст объект
источник

ПК

Побитый Кирпич... in supapro.cxx
То что такой литерал можно присвоить неконст указателю это расширение компилятора, которое скорее всего можно (и нужно) отключить
источник

ПК

Побитый Кирпич... in supapro.cxx
Это если про С++, в С и не такую дичь можно делать
источник

CC

Cool Cooler in supapro.cxx
Переслано от Cool Cooler
'' — это по сути литерал числа
источник

D

Danya in supapro.cxx
Коля🤔🎭
У меня MSVC, компилится
Потому что надо делать /permissive-
источник