Помощь
-
Поиск
-
Пользователи
-
Календарь
Полная версия этой страницы:
Вопрос по си
Форум разработчиков электроники ELECTRONIX.ru
>
Сайт и форум
>
В помощь начинающему
>
Программирование
andron86
Jan 21 2012, 17:46
Является ли это выражение правильным?
Код
#define TEXT "Hello world"
write(char *str)
{
чтение строки ....
}
void main(){
write(TEXT);
}
Палыч
Jan 21 2012, 17:51
Да. Что Вас смущало?
andron86
Jan 21 2012, 17:55
У меня, gcc, так работает, а как выше проблема с большими строками :-((
Код
const char Text[]="Hello world";
write(char *str)
{
чтение строки ....
}
void main(){
write(Text);
}
AHTOXA
Jan 21 2012, 19:37
Скорее всего, без "const" gcc помещает строку в ОЗУ.
aaarrr
Jan 21 2012, 19:55
Цитата(andron86 @ Jan 21 2012, 21:46)
Является ли это выражение правильным?
Если не предпринимается попыток изменить содержимое строки по указателю, то все правильно.
andron86
Jan 21 2012, 20:10
Цитата(aaarrr @ Jan 21 2012, 20:55)
Если не предпринимается попыток изменить содержимое строки по указателю, то все правильно.
Строку не изменяю, понимаю смысл, только читаю.
Цитата
Скорее всего, без "const" gcc помещает строку в ОЗУ.
Вот это уже интереснее, пытаюсь понять, но не врублюсь. Может какие флаги в make, c, c++???
Сергей Борщ
Jan 21 2012, 21:08
QUOTE (andron86 @ Jan 21 2012, 19:55)
а как выше проблема с большими строками :-((
В чем именно проблема выражается?
andron86
Jan 22 2012, 05:50
Ух, всё работает, почему-то объекты не удалялись при рекомпиляции.
Цитата
В чем именно проблема выражается?
В середине строки лезли непонятные символы. Слышал что-то по поводу строковых литералов в си, поэтому и спросил.
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке
.
Invision Power Board © 2001-2025
Invision Power Services, Inc.