|
|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Gleb Smirnoff 2:5020/400 29 Feb 2004 19:37:16 To : Valentin Nechayev Subject : Re: Sendmail+qpopper -------------------------------------------------------------------------------- Valentin Nechayev <netch@segfault.kiev.ua> wrote: VN>>> Вот так - да, действительно вылетит. Hо к этому: VN>>> 1) кто так сделал - ССЗБ. VN>>> 2) защита против таких ССЗБ - при нормальном уровне варнингов компилятор VN>>> скажет "вы тут const char* преобразовываете к char*, нехорошо-с". ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ GS>> Hо ведь в примере не const? VN> Как это не const? VN> "initializer" в данном случае (не контекст присвоения начального VN> значения массиву) - значение типа const char*, указывающее на размещённую VN> в памяти (вероятно, в константной) строку. VN> Это не так разве что при -fwritable-strings, но я такого ключа не давал VN> (и даже на пробу явно написал -fno-writable-strings - но ничего не VN> поменялось). VN> И присвоение его в переменную типа char*, в операторе: VN> char *x = "initializer"; VN> и есть то, на что компилятор обязан был выругаться. Hе преобразовываете, а приравниваете. Hе понимаю почему компилятор должен ругаться. Он же не ругается на int i = 1; -- Totus tuus, Glebius. GLEBIUS-RIPN GLEB-RIPE --- ifmail v.2.15dev5.3 * Origin: Demos online service (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/6577ccf89340.html, оценка из 5, голосов 10
|