小编Ait*_*bil的帖子

宏重新定义逻辑运算符

我是 C 编程新手,所以如果这听起来像是一件愚蠢的事情,请原谅我。

我有一个想法试图让我的代码更具可读性,这个想法是#define 逻辑运算符,例如#define OR ||.

如果有人可以指导我这是不好的还是好的做法,它是否常见等等......以及如果它有任何副作用,我将不胜感激。提前致谢。

c

3
推荐指数
2
解决办法
276
查看次数

C 中的强制转换与隐式转换

我正在读一本关于 C 语言安全编码的书,我迷失的一点是强制转换和隐式转换之间的区别。请看一下下面的代码片段:

unsigned char a = 1;
unsigned char b = 2;

int c = b - a ;  //presumably implicit conversion
printf("%u" , (int)a - b );  // presumably casting
Run Code Online (Sandbox Code Playgroud)

(int) a-b 我在 Google 上找到了答案,但它们都与 C# 甚至 C++ 有关,但不是普通的 C ,所以有人可以解释一下这样做和分配给另一个这样的变量有什么区别吗int c = a - b

这里究竟发生了什么?提前致谢 。

c casting implicit-conversion

0
推荐指数
1
解决办法
2198
查看次数

标签 统计

c ×2

casting ×1

implicit-conversion ×1