В нашей компании мы пишем программы для контроллеров серии AVR. В этой статье я опишу как мы в нашей компании создаем строки, расположенные в кодовой памяти.
Нам требовалось, чтобы следующий код не выдавал ошибок, а в итоге мы получили гораздо более мощный инструмент, чем предполагали.
const char *pStr = PSTR("Hello"); // В этом месте ошибка.
// error: statement-expressions are not allowed outside functions nor in template-argument lists
int main() {…}