网站首页 > 基础教程 正文
在c语言中,定义一个结构体类型最好用上typedef这种方式,至于为什么?下面我们简单讲下。
typedef struct point
{
int x;
int y;
}Point;
在声明变量或定义变量的时候就可以像这样:Point p1;
如果没有用typedef这个关键字,如:
struct point
{
int x;
int y;
};
在声明变量或者定义变量的时候就必须用:struct point p1;
可以看出Point是struct point的别名。
其实也可以省去point如下:
typedef struct {
int x;
int y;
}Point;
=================
在c++里,用法比c语言简单
struct Point
{
int x;
int y;
};
定义了一个结构体Point,声明变量时直接用Point p1;
如果使用typedef又会造成区别
struct Point{
int x;
int y;
} p1; //这里定义了Point结构体,同时声明了一个变量p1
typedef struct Point
{
int x;
int y;
} p2; //这里的p2 是Point的别名
总结:
在c中 struct 不能包含函数
在c++中, 对struct进行了扩展,可以包含函数
在c++中, 之所以包含两种定义方式主要是为了兼容c语言
猜你喜欢
- 2024-12-30 C++ 在编程语言谱系中的位置及其特点
- 2024-12-30 C++基础知识总结(超详细总结) c++ 基础
- 2024-12-30 [面试]C++中struct和class的区别是什么
- 2024-12-30 C++类和C语言的结构体有什么区别?linux C++第18讲
- 2024-12-30 C与C++利用pragma pack对结构体做成员打包对齐设置
- 2024-12-30 结构体所占内存大小 结构体所占内存大小是所有成员所占的内存字节数计算
- 2024-12-30 结构体的各种使用方法详细讲解-c\c++
- 2024-12-30 C++,结构体和类,结构体和类的区别,struct与class的区别
- 2024-12-30 C++编程:复合数据类型—结构体 c语言结构体复数运算
- 2024-12-30 C#与C++交互开发系列之复杂类型传递与解析
- 05-24php实现三方支付的方法有哪些?
- 05-24CosmicSting 漏洞影响 75% 的 Adobe Commerce 和 Magento 网站
- 05-24Java接口默认方法的奇妙用途
- 05-24抽象类和接口
- 05-24详解Java抽象类和接口
- 05-24拒绝接口裸奔!开放API接口签名验证
- 05-24每天学Java!Java中的接口有什么作用
- 05-24Java:在Java中使用私有接口方法
- 最近发表
- 标签列表
-
- jsp (69)
- gitpush (78)
- gitreset (66)
- python字典 (67)
- dockercp (63)
- gitclone命令 (63)
- dockersave (62)
- linux命令大全 (65)
- pythonif (86)
- location.href (69)
- dockerexec (65)
- tail-f (79)
- deletesql (62)
- c++模板 (62)
- linuxgzip (68)
- 字符串连接 (73)
- nginx配置文件详解 (61)
- html标签 (69)
- c++初始化列表 (64)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- console.table (62)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)