我们知道 C 和 C++ 在许多方面非常相似。C++ 具有额外的面向对象特性,但大多数 C 程序在 C++ 中也可能是正确的。在这里,我们将看到一个与函数调用相关的程序,它可以在 C 中编写时运行,但在 C++ 中却无法运行。示例 实时演示#include void myFunction() { printf("Function called"); } int main() { myFunction(); myFunction(2); }输出Function called Function called此程序将在 C 中运行并生成输出,但是当我们想要在 C++ 中编译时,它将返回一个错误 ... 阅读更多
在本节中,我们将了解 C 中的字符串化运算符 (#) 和令牌粘贴运算符 (##) 是什么。字符串化运算符是一个预处理器运算符。它向编译器发送命令以将令牌转换为字符串。我们在宏定义中使用此运算符。使用字符串化运算符,我们可以将某些文本转换为字符串,而无需使用任何引号。示例 实时演示#include #define STR_PRINT(x) #x main() { printf(STR_PRINT(This is a string without double quotes)); }输出This is a string without double quotes令牌粘贴运算符是一个预处理器运算符。它向编译器发送命令以将两个令牌添加到一个字符串中。我们使用 ... 阅读更多
在这里,我们将了解如何编写一个代码,其中存在两个函数,一个函数将在 main 函数之前执行,另一个函数将在 main 函数之后执行。这些功能用于在执行 main 之前执行某些启动任务,并在执行 main 之后执行某些清理任务。要执行此任务,我们必须为这两个函数添加属性。当属性是构造函数属性时,它将在 main() 之前执行,而当属性是析构函数类型时,它将在 main() 之后执行。我们使用 GCC 函数。该函数是 __attribute__()。 ... 阅读更多