c语言 define值的问题
发布网友
发布时间:2022-04-24 03:01
我来回答
共3个回答
热心网友
时间:2022-04-27 08:13
#define s 3;
改成
#define s 3
也就是去掉3后面的分号
#define epxl 1e-12;
一样
因为在此处#define只作简单的字符替换
#define s 3;
将后面出现s的地方换成3; 所以会出错
热心网友
时间:2022-04-27 09:31
你把#define后面的分号删掉就可以通过了
写成#define s 3
在C或C++语言源程序中允许用一个标识符来表示一个字符串,称为“宏”。被定义为“宏”的标识符称为“宏名”。在编译预处理时,对程序中所有出现的“宏名”,都用宏定义中的字符串去代换,这称为“宏代换”或“宏展开”。宏定义是由源程序中的宏定义命令完成的。宏代换是由预处理程序自动完成的。
热心网友
时间:2022-04-27 11:05
#define s 3;
会导致编译时将所有的s全替换成“3;”了
宏定义时,不要带;结尾
去掉分号,改成:
#define s 3
也可以这样改一下:
const int s=3;