c(void)

(void)变量;

在代码中没有具体意义,只是告诉编译器该变量已经使用了

ret_t page_init(widget_t* win, void* ctx) {
  (void)ctx;
  return_value_if_fail(win != NULL, RET_BAD_PARAMS);

  return RET_OK;
}

(void *)变量

void * 就是无类型指针类型,他所指向的内存空间没有被认为是某一种特定的类型。

void *ctx;
if(ctx==(void*)0) return 0;
*(unsigned char*)ctx=1;

ctx被定义成void *(void *)0 0强制转换为 void *,便于跟j进行同类型比较, 所以 ctx==(void *)0的意思是,判断ctx是不是0,即ctx是否指向0地址。

*(unsigned char *)cxt,首先看(unsigned char *)ctx,意思是把j强制类型转换为unsigned char *型,那么*(unsigned char *)ctx就是把ctx 指向的内存空间的一个字节强制当作unsigned char来用。*(unsigned char *)ctx=1就是把1写入j指向的那个一字节空间。

(void)函数名

表示程序并不关心调用该函数后的返回值是什么。
这种写法不针对人,也不针对编译器,而是针对静态代码检测工具,它会把函数返回值作为一项检测标准。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值