Size: a a a

2021 March 03

AS

Anatoly Shirokov in supapro.cxx
Stas Koynov
ну я не силен в терминологии, вечно меня сьедают на этом :(
я всегда даю вот этот пример:
int a[10];
++a = 10; // раз a - это указатель, то вполне легальный код, но нет
источник

D

Danya in supapro.cxx
YEgor Briz
Ни в чём?)
Во всём
источник

SK

Stas Koynov in supapro.cxx
Anatoly Shirokov
я всегда даю вот этот пример:
int a[10];
++a = 10; // раз a - это указатель, то вполне легальный код, но нет
ну это всеже констнатный указатель. менять его низя
источник

AS

Anatoly Shirokov in supapro.cxx
Stas Koynov
ну это всеже констнатный указатель. менять его низя
он приводится к указателю, но массив - не указатель. sizeof(a) != sizeof(a[0])
источник

S

Stepan in supapro.cxx
Stas Koynov
ну я не силен в терминологии, вечно меня сьедают на этом :(
char *s = "Hello";
char s[] = "Hello";

Это разное
источник

D

Danya in supapro.cxx
Stepan
char *s = "Hello";
char s[] = "Hello";

Это разное
Конечно
Первое вообще не компилится
источник

SK

Stas Koynov in supapro.cxx
ну блин это как ссылка не указатель а лишь магия... но если передать и то и другое то на асме окажется тупо адрес.
источник

S

Stepan in supapro.cxx
Danya
Конечно
Первое вообще не компилится
Почему же?
источник

D

Danya in supapro.cxx
Stepan
Почему же?
Ну потому что невалидный с++
источник

S

Stepan in supapro.cxx
Почему?
источник

 P

 ‌‌Gleb Pilipets... in supapro.cxx
Danya
Ну потому что невалидный с++
Так есть компиляторы где компилится
источник

AS

Anatoly Shirokov in supapro.cxx
Stas Koynov
ну блин это как ссылка не указатель а лишь магия... но если передать и то и другое то на асме окажется тупо адрес.
это тоже не так
int foo(int (&)[10]) - сохранили тип

вот передача ссылки на массив
источник

D

Danya in supapro.cxx
Cannot convert object of type 'const char*' to 'char*'
источник

SK

Stas Koynov in supapro.cxx
Danya
Ну потому что невалидный с++
const добавь и будет валидный. ладно я огворился, зачем чушь то писать
источник

 P

 ‌‌Gleb Pilipets... in supapro.cxx
 ‌‌Gleb Pilipets
Так есть компиляторы где компилится
А раз в компиляторах нету GC, то они не по стандарту и так работают. Поэтому на каком-то компиляторе такой код валидный
источник

D

Danya in supapro.cxx
 ‌‌Gleb Pilipets
Так есть компиляторы где компилится
Ну значит это компилятор, который не предоставляет валидный С++
источник

LA

Liber Azerate in supapro.cxx
 ‌‌Gleb Pilipets
А раз в компиляторах нету GC, то они не по стандарту и так работают. Поэтому на каком-то компиляторе такой код валидный
Нет, GC опционален. К тому же, библиотечная поддержка сборки мусора наличествует
источник

D

Danya in supapro.cxx
 ‌‌Gleb Pilipets
А раз в компиляторах нету GC, то они не по стандарту и так работают. Поэтому на каком-то компиляторе такой код валидный
GC потому что нахер не нужен
источник

D

Danya in supapro.cxx
 ‌‌Gleb Pilipets
Так есть компиляторы где компилится
-Wall -Wextra -pedantic -Werror
источник

 P

 ‌‌Gleb Pilipets... in supapro.cxx
Liber Azerate
Нет, GC опционален. К тому же, библиотечная поддержка сборки мусора наличествует
Ааа, я не знал, что опционален. Это в стандарте написано?
источник