Re[9]: char* или char[]
От: achp  
Дата: 05.01.04 07:25
Оценка:
Здравствуйте, Павел Кузнецов, Вы писали:

K>>char sz[] = "TEXT";

K>>непосредственный адрес строки выделенной в рантайме на стеке и скопированный из отсека RO. Самый медленный, но в такой буфер можно писать.

ПК>Формально это эквивалентно const char sz[] = "TEXT" за исключением того, что содержимое массива можно модифицировать. Однако, действительно, практически отсутствие const означает то, что компилятор вынужден копировать содержимое литерала в массив и не будет использовать одну и ту же память для литерала и массива sz.


Но даже в этом случае, если компилятор сможет установить, что фактически запись в массив sz не выполняется (т. е. массив используется в "режиме" константного), он опять-таки имеет право исключить такое копирование.
Да здравствует ИМХО!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.