在这里,我们将了解 C 中的卫生宏。我们知道宏在 C 中的用法。但有时,由于意外捕获标识符,它不会返回期望的结果。如果我们看到以下代码,我们可以看到它不能正常工作。示例#include #define INCREMENT(i) do { int a = 0; ++i; } while(0) main(void) { int a = 10, b = 20; //对 a 和 b 调用宏两次 INCREMENT(a); INCREMENT(b); printf("a = %d, b = %d", a, b); }预处理后代码将如下所示 - 示例#include #define ... 阅读更多
在这里,我们将了解 C 和 C++ 之间的一些差异。一些可以使用 C 编译器编译的 C 代码,但在 C++ 编译器中无法编译。并且还会返回错误。我们可以使用一种语法定义函数,该语法可以选择地在参数列表后指定参数类型。示例#include void my_function(x, y)int x;int y; { // 在 C++ 中无效 printf("x = %d, y = %d", x, y); } int main() { my_function(10, 20); }输出x = 10, y = 20输出C++ 中的错误:- x 和 y 在此范围内未声明在 C 或某些旧版本的 C++ 中,... 阅读更多
在这里,我们将了解一些关于 C 编程的有趣事实。它们如下所示。有时,某些 switch 语句的 case 标签可以放在 if-else 语句中。示例#include main() { int x = 2, y = 2; switch(x) { case 1: ; if (y==5) { case 2: printf("Hello World"); } else case 3: { //case 3 块 ... 阅读更多