在这里,我们将了解 C 中的结构体和 C++ 中的结构体的区别。C++ 结构体大多类似于 C++ 中的类。在 C 结构体中,所有成员都是公共的,但在 C++ 中,它们默认是私有的。其他一些区别列在下面。C 结构体 C++ 结构体 C 中的结构体不能在结构体内部包含成员函数。C++ 中的结构体可以包含成员函数和成员变量。在 C 中,我们不能直接初始化结构体数据。我们可以在 C++ 中直接初始化结构体数据。在 C 中,我们必须编写“struct”关键字来声明结构体类型变量。在 C++ 中,我们不需要使用“struct”… 阅读更多
在这里,我们将了解如何在 C++ 中根据结构体中某些成员变量的条件进行排序。在这个例子中,我们将使用一个名为 book 的结构体。book 将包含名称、页数和价格。我们将根据价格对它们进行排序。为了比较两个结构体,我们必须定义一个函数。此函数将使用这些参数进行比较。此比较函数用于排序函数内部以对值进行排序。示例 #include #include using namespace std; struct book { string title; int pages; float price; }; bool compareBook(book b1, book b2) { if(b1.price 阅读更多
在本节中,我们将了解如何在 C 语言中编写多行宏。我们可以像函数一样编写多行宏,但是对于宏,每一行都必须以反斜杠“\”字符结尾。如果我们使用花括号“{}”并且宏以“}”结尾,则可能会产生一些错误。因此,我们可以将整个内容括在括号中。请查看以下程序以了解多行宏。示例 #include #define PRINT(x, str) ({\ printf("The number %d", x);\ printf(" is ");\ printf(#str);\ printf("");\ }) int main() { int x = 10; if(x % 2 == 0){ PRINT(x, EVEN); } } 输出 The number 10 is EVEN
我们将了解如果使用负数进行模运算,结果将是什么。让我们看看以下程序及其输出以了解其原理。示例 #include int main() { int a = 7, b = -10, c = 2; printf("Result: %d", a % b / c); } 输出 Result: 3 在这里,% 和 / 的优先级相同。因此 % 首先起作用,所以 a % b 生成 7,现在除以 c 后,它生成 3。在这里,对于 a % b,左操作数的符号附加到… 阅读更多