| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Для новичков > Указатели, константы |
| Автор: tofreesky 30.6.2010, 00:10 |
| char *F = "123"; Когда пытаюсь изменить в строке символ - ошибка, из за того что строка доступна только для чтения. Когда пишу так char F[] = "123"; Все нормально. Разве есть различия. Напишите как трактуется первый и второй вариант. |
| Автор: Игорь1024 30.6.2010, 02:31 |
| In first case you point to some memory area, therefore you can not change the value. In second case you have the char array and can do everething you want. Perhaps I made mistake in first case, but to my mind it's right. |
| Автор: mes 30.6.2010, 10:00 |
из за наследия С.. на самом деле запись должна выглядить так : const char * = ... пользуйте поиск, тема не раз обсуждалась.. |
| Автор: Леопольд 30.6.2010, 14:00 |
| susanin, надо включать максимальный уровень ворнингов. Для gcc это -Wall. http://codepad.org/6HPA2QQk warning: deprecated conversion from string constant to 'char*'' |
| Автор: djamshud 1.7.2010, 16:02 | ||
массив != указатель >Для gcc это -Wall. А -Wextra - это чуть более, чем максимальный? |