在C语言中,有没有一种好的方法将长度优先的Pascal风格的字符串定义为常量,这样它们就可以放在ROM中?(我使用的是一个小型嵌入式系统,使用的是非GCC ANSI C编译器)。
C字符串以0
结尾,例如。{'f'
,'o'
,'o'
,0
}。
Pascal字符串的长度为第一个字节,例如。{3
,'f'
,'o'
,'o'
}。
我可以使用以下命令声明一个要放入ROM中的C字符串:
const char *s = "foo";
对于Pascal字符串,我可以手动指定长度:
const char s[] = {3, 'f', 'o', 'o'};
但是,这很尴尬。有没有更好的方法?也许在预处理器中?
https://stackoverflow.com/questions/7648947
复制相似问题