-
- "полно других строк,которые потом из за этого передаются в функцию" - неверно!!! В функцию передаётся только адрес начала строки. бомж(279 знак., 04.04.2013 13:45)
- но компилятор сует все такие строки в одну область флеша почему то. можно как то нужные мне строки в другую область положить. - kosig(04.04.2013 08:37)
- Вы можете четко сформулировать, что Вам нужно? Смешно читать ответы - все пишут о разном, но каждый правильно :) - Vladimir Ljaschko(04.04.2013 11:25)
- +1 - Юрий_СВ(04.04.2013 19:13)
- Спасибо за ответы. Ситуация такая, что надо сохранить во определенной области флеша массив строк. Для функции, которая производит запись нужно передать указатель на начало массива строк. Массив я инициализирую в разных местах программы таким kosig(374 знак., 05.04.2013 09:33)
- const char mystrings[] = "one\0" "two\0" "three"; - йцукен(05.04.2013 13:55, )
- Не факт, что \0 переварит сам компилятор в своих внутренностях. Я бы не рискнул. - fk0(05.04.2013 14:56)
- Ну, если компилятор профессионального уровня HITECH, то всего можно ожидать, да :-) - SciFi(05.04.2013 14:59)
- Не факт, что \0 переварит сам компилятор в своих внутренностях. Я бы не рискнул. - fk0(05.04.2013 14:56)
- Ужос. Надо всё выкинуть и начать с начала. Лучше с учебника какого-нибудь. - SciFi(05.04.2013 11:33)
- А что, функция записи не может использовать значение NUMB для определения нужных Вам строк? Или Вы рассчитываете, что указатель волшебным образом передаст программе и количество элементов массива? Vladimir Ljaschko(418 знак., 05.04.2013 10:01)
- const char mystrings[] = "one\0" "two\0" "three"; - йцукен(05.04.2013 13:55, )
- Спасибо за ответы. Ситуация такая, что надо сохранить во определенной области флеша массив строк. Для функции, которая производит запись нужно передать указатель на начало массива строк. Массив я инициализирую в разных местах программы таким kosig(374 знак., 05.04.2013 09:33)
- +1 - Юрий_СВ(04.04.2013 19:13)
- Если одинаковые строки, то это оптимизация: экономит память и не делает несколько копий одной строки. Эту оптимизацию можно отключить. - SciFi(04.04.2013 08:55)
- Убрать const. - fk0(04.04.2013 11:18)
- Для этого есть pragma location und pragma section. RTFM for linker. - Vladimir Ljaschko(04.04.2013 08:46)
- Вы можете четко сформулировать, что Вам нужно? Смешно читать ответы - все пишут о разном, но каждый правильно :) - Vladimir Ljaschko(04.04.2013 11:25)
- дык вот так обьявление с иннициализацией char const* tmp[] = { "string", "string2", "string3" }; - MegaJohn(03.04.2013 17:18)
- Потому что char str[] - переменная. Все переменные должны быть в ОЗУ, в ПЗУ могут быть только константы. Вот "string" это константа (const char *), и эта константа будет скопирована в ОЗУ по адресу str[]. - amx(03.04.2013 17:10)