Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Вопрос по си
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > Программирование
andron86
Является ли это выражение правильным?
smile3046.gif
Код
#define TEXT "Hello world"

write(char *str)
{
чтение строки ....
}

void main(){
write(TEXT);
}

Палыч
Да. Что Вас смущало?
andron86
У меня, gcc, так работает, а как выше проблема с большими строками :-((
Код
const char Text[]="Hello world";
write(char *str)
{
чтение строки ....
}

void main(){
write(Text);
}
AHTOXA
Скорее всего, без "const" gcc помещает строку в ОЗУ.
aaarrr
Цитата(andron86 @ Jan 21 2012, 21:46) *
Является ли это выражение правильным?

Если не предпринимается попыток изменить содержимое строки по указателю, то все правильно.
andron86
Цитата(aaarrr @ Jan 21 2012, 20:55) *
Если не предпринимается попыток изменить содержимое строки по указателю, то все правильно.

Строку не изменяю, понимаю смысл, только читаю.
Цитата
Скорее всего, без "const" gcc помещает строку в ОЗУ.

Вот это уже интереснее, пытаюсь понять, но не врублюсь. Может какие флаги в make, c, c++???
Сергей Борщ
QUOTE (andron86 @ Jan 21 2012, 19:55) *
а как выше проблема с большими строками :-((
В чем именно проблема выражается?
andron86
Ух, всё работает, почему-то объекты не удалялись при рекомпиляции.
Цитата
В чем именно проблема выражается?

В середине строки лезли непонятные символы. Слышал что-то по поводу строковых литералов в си, поэтому и спросил.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.