C++ 中 Struct 和 Typedef Struct 的区别
这篇小文章将讨论 C++ 中的关键字 typedef。 我们还将讨论 C++ 中简单结构和 typedef 结构之间的区别。
C/C++ 中的 typedef 关键字
typedef 是 C/C++ 中的关键字,用于为数据类型提供新名称或别名。 这些数据类型可以是原始数据类型(例如,int、float 等)或非原始数据类型或用户定义的数据类型(例如,类、结构体或联合)。
typedef 关键字主要用于用户定义的数据类型,这些数据类型在程序中使用起来有些复杂,或者名称与程序上下文关系不大。
为原始 int 数据类型声明 typedef 的语法如下:
typedef int negative_int;
现在,每当我们必须在程序中声明一个 int 变量时,我们都可以使用名称 negative_int 来做到这一点,如下所示:
#include <iostream>
using namespace std;
int main()
{
cout<<"Welcome to the typedef tutorial"<<endl;
typedef int negative_int; // typedef keyword use
negative_int num = -7;
cout<<"The number is: "<<num<<endl;
return 0;
}
该代码的输出将是:
Welcome to the typedef tutorial
The number is: -7
C++ 中 struct 和 typedef struct 的区别
C++ 中的 struct 和 typedef struct 之间没有区别,因为只要具有相同名称的另一个声明不会模糊名称,所有结构、联合、枚举和类声明的行为就如同它们是隐式 typedef 的一样。
C语言使用typedef struct,因为在C语言中,每当需要创建struct对象时,每次都必须使用struct关键字。 因此,当您只能通过名称使用 struct 时,typedef 很有用。
相关文章
Arduino 复位
发布时间:2024/03/13 浏览次数:315 分类:C++
-
可以通过使用复位按钮,Softwarereset 库和 Adafruit SleepyDog 库来复位 Arduino。
Arduino 的字符转换为整型
发布时间:2024/03/13 浏览次数:181 分类:C++
-
可以使用简单的方法 toInt()函数和 Serial.parseInt()函数将 char 转换为 int。
Arduino 串口打印多个变量
发布时间:2024/03/13 浏览次数:381 分类:C++
-
可以使用 Serial.print()和 Serial.println()函数在串口监视器上显示变量值。