常量字符串定义还是使用宏?
有一个问题突然搞不清了:
例如有一个字符串:"Start Event"
书上会推荐我们定义成
而不推荐使用宏:
但是如果是在这个大工程中,有非常多这样的字符串,手边的工程就有需要上万个这样的常量字符串,那么如果使用const char *来定义在某个文件中(这个文件就是专门放这些常量字符串的),这样会一开始就会占用很多不必要的内存,如果用宏#define的话,就不会占用内存了,只有在需要的时候才占用。
是一如即往的使用宏来定义这样的字符串呢还是分情况,如果只是些小工程就用const char *,真需要太多的时候就用宏?
例如有一个字符串:"Start Event"
书上会推荐我们定义成
const char *EVENT_START = "Start Event";而不推荐使用宏:
#define EVENT_START "Start Event"但是如果是在这个大工程中,有非常多这样的字符串,手边的工程就有需要上万个这样的常量字符串,那么如果使用const char *来定义在某个文件中(这个文件就是专门放这些常量字符串的),这样会一开始就会占用很多不必要的内存,如果用宏#define的话,就不会占用内存了,只有在需要的时候才占用。
是一如即往的使用宏来定义这样的字符串呢还是分情况,如果只是些小工程就用const char *,真需要太多的时候就用宏?
...全文
相关推荐
linux的一些宏的使用说明.pdf
方便对linux代码的读写和调试,linux的宏的使用
工作笔记-宏中的字符串# 操作符与## 操作符
/ 输出 "Hello, World!return 0;在这个例子中,MESSAGE是一个宏,表示字符串。当程序编译时,MESSAGE会被替换为这个字符串常量。宏中的字符串:通过宏,我们可以将常用的字符串作为常量定义,并且通过条件编译等方式生成不同的字符串。操作符:将宏参数转换为字符串常量,可以用于创建动态字符串。##操作符:用于拼接字符串常量或宏参数,可以用来生成新的字符串或变量名。条件编译:宏中的字符串也可以结合条件编译,方便地根据编译时的条件选择不同的字符串输出。
宏.docx
宏.docx
c语言宏使用
c语言宏使用c语言宏使用c语言宏使用c语言宏使用
define使用
define的使用总结。较全面。有需要的可以下载看看。


