除了在.c及.h中添简渣加宏定义之外,还可以采用如下方法添加宏定仿棚义:
1、若只需要定义一个宏(如#define DEBUG),可以右键点击工程-->属性-->c/c++-->预处理器-->预处理器定义,点击下拉框中的编辑,输入想要定义的宏;
2、如果还需要定义宏的内容(如#define inline __inline),可以右键点击工程-->属性-->c/c++-->命令拦大悄行,在其它选项中输入如下内容: /D"inline"=__inline 。
造成手肆这种情况的原因是编译器遵照的C++标准不同。解决的方法有2个:
(激凯1)添加宏命令
在文件中添加
#define _CRT_SECURE_NO_WARNINGS这样就忽略了使明薯唤用新函数而报错了。
(2)修改使用的getch函数。
将getch改成_getch即可
这里面是因为strcpy_s需要输入3个参数,而你只输入了2个参数腊薯。所以会报错。
解决的方案有2种:
(1)添加宏命令
在文件中添加
#define _CRT_SECURE_NO_WARNINGS这样就忽略了使用新函数而报错了。
(2)添加strcpy_s函判码数的输入参数。
对于字符串拷贝函数来说
errno_t strcpy_s(char *strDestination,
size_t numberOfElements,
掘局哪 const char *strSource
)
中间第二个参数是要拷贝的字符个数。因此,
将
strcpy_s(a, b)改为
strcpy_s(a,10,b)结果如下:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)