#define NULL ((void *)0)引起的风波

Posted 429512065qhq

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了#define NULL ((void *)0)引起的风波相关的知识,希望对你有一定的参考价值。

1. 看下宏定义的结构体

typedef struct
{
    char szCMEI_IMEI[64];     //CMEI/IMEI
    char szSrvIP[32];        //server
    char szCMEI_IMEI2[64];    //CMEI/IMEI
} Options;

2. 定义的NULL

#define NULL ((void *)0)

3. 报错的地方

Options dm_config = {"CMEI_IMEI",NULL, NULL};

4. 修改正确的写法

Options dm_config = {"CMEI_IMEI",{0}, {0}};

5. 总结,暂时没觉得两种写法有何区别,保留这个问题

以上是关于#define NULL ((void *)0)引起的风波的主要内容,如果未能解决你的问题,请参考以下文章

#define assert_param(expr) ((void)0) 里面的“expr”是啥意思?

这句话是什么意思? #define assert_param(expr) ((void)0)

#include <reg52.h> #define uchar unsigned char //宏定义 #define uint unsigned int void de

NULL与nullptr

CC2530驱动DS18b20

7.1练习,指针部分用法,算个平均数