typdef struct 语法
1:结构体
C语言中定义一个结构体的语法如下:
struct tagMyStruct
{
int age;
int sex;
};
其中,tagMyStruct是结构体名,在使用时,需要和struct 关键字一起使用,代表一个结构体类型,如下:
struct tagMyStruct people1; 其语法类似于 int num; 也就是说struct tagMyStruct 连起来相当于一种数据类型(自定义数据类型)。
people1是一个结构体变量,可以使用点语法访问结构体内部的变量。类似于:
people1.age = 5;
people1.sex = 1;
在定义一个结构体的时候,同时可以声明结构体变量,语法如下:
struct tagMyStruct
{
int age;
int sex;
}testStruct;
定义了一个结构体,同时声明了一个结构体变量testStruct。
2:typedef 关键字
typedef 的使用如下:
typedef 已有类型名称 新名称;
比如: typedef int testInt; 也就是给int类型起了一个别名,testInt num 和 int num 所表示的意思是一样的,都是定义了一个int类型的变量。
typedef 和定义结构体结合起来使用如下:
typedef struct tStruct
{
int age;
int sex;
}ttStruct;
上面的代码其实是完成了两步操作:
1: 定义一个结构体类型,名称是tStruct
struct tStruct
{
int age;
int sex;
};
2:给该结构体类型起了一个新的别名 ttStruct
typedef struct tStruct ttStruct;
此时,ttStruct就表示 struct tStruct,因此在定义结构体变量时,可以使用如下的语法:
ttStruct people3;
people3.age = 8;
people3.sex = 0;
typdef struct 语法的更多相关文章
- (转载)struct 与typdef struct的区别
(转载)http://blog.csdn.net/piratejk/article/details/3491226 1. 基本解释 typedef为C语言的关键字,作用是为一种数据类型定义一个新名字. ...
- C++学习1-(C语言基础、VS快捷键)
C语言基础复习 1.三码 正数: 3码合1 ,正数的反码/补码就是其本身 负数: 原码就是符号位加上真值的绝对值,即用第一位表示符号,其余位表示值 原码:11010101 负数的反码是在其原码的基础上 ...
- Runtime理解
动态语言 OC是一门不折不扣的动态语言,所以它的很多机制都是动态运行时决定的.这点和C语言不一样,C语言是静态绑定,也就是编译后所有的一切都已经决定了.这一点和C语言的函数指针有些类似,很多时候函数指 ...
- Objective-C——Runtime理解
动态语言 OC是一门不折不扣的动态语言,所以它的很多机制都是动态运行时决定的.这点和C语言不一样,C语言是静态绑定,也就是编译后所有的一切都已经决定了.这一点和C语言的函数指针有些类似,很多时候函数指 ...
- Hive函数大全
一.关系运算: 1. 等值比较: = 语法:A=B 操作类型:所有基本类型 描述: 如果表达式A与表达式B相等,则为TRUE:否则为FALSE 举例: hive> select 1 from l ...
- data structure
转载请注明出处: 我所遇见的世界会更美好 我曾经逢人就说总是遇到这样那样错误无法解决,但是这些问题只要静下心来仔细思考根本没有解决不了的问题. 其实明明,超级超级简单,然而被老师讲的天花乱坠, 栈: ...
- Icon资源详解[1]
本文分享&备忘最近了解到的icon资源在windows平台下相关的一部分知识,所有测试代码都尽可能的依赖win32 API实现.更全面的知识,参考文末列出的”参考资料“. 关键字:I ...
- B-树和B+树
B-树和B+树是一种平衡的多路查找树,它在文件系统中很有用.一颗m阶的b-树,或为空树,或满足下列特性的m叉树.1)树中每个节点至多有m棵子树2)若根结点不是叶子结点,则至少有两棵子树.3)除根之外的 ...
- [IoLanguage]Io Programming Guide[转]
Io Programming Guide Introduction Perspective Getting Started Downloading Installing Binaries Ru ...
随机推荐
- iOS开发:在Xcode中用Pods管理第三方库
之前写了一篇 iOS开发:在Swift中调用oc库 ,今天记录一下如何用Pods的方式来管理第三方库,包括Swift/Object-C的库. 在这之前请先查阅Guides.CocoaPods如何使用的 ...
- AssetManager asset的使用
Android 系统为每个新设计的程序提供了/assets目录,这个目录保存的文件可以打包在程序里./res 和/assets的不同点是,android不为/assets下的文件生成ID.如果使用/a ...
- 注解框架ButterKnife
将插件升级到1.3后支持Android Studio1.3 + ButterKnife7 如何使用 有所使用的布局 ID 上点击右键 (例如上图中的 R.layout.activity_setting ...
- The resource could not be loaded because the App Transport
Xcode7 beta 网络请求报错:The resource could not be loaded because the App Transport Xcode7 beta 网络请求报错:The ...
- 海康、大华IpCamera RTSP地址和格式
海康:rtsp://[username]:[password]@[ip]:[port]/[codec]/[channel]/[subtype]/av_stream说明:username: 用户名.例如 ...
- Android好用且常用的插件及工具
1.GitHub,这个不管是做安卓还是其他,只要是开发就必上的网站,也是天朝没有墙掉为数不多的网站 2.Stack OverFlow,这个和上面一样,国外非常著名的问答网站,在上面基本上很多问题都可以 ...
- Ios 程序封装,安装流程
转:http://www.myexception.cn/operating-system/1436560.html Ios 程序打包,安装流程 一.发布测试,是指将你的程序给 * 你的测试人员,因 ...
- WPF MultiBinding 和 IMultiValueConverter
MultiBinding,描述附加到单个绑定目标属性的Binding对象的集合.可以指定多个数值绑定. IMultiValueConverter通过转换器使用MultiBingding对象,该对象讲根 ...
- POJ 1251 Jungle Roads
题意:嗯……没看题……看了眼图……求个最小生成树. 解法:kruskal. 代码: #include<stdio.h> #include<iostream> #include& ...
- Matlab编程实例(2) 同期平均
%多点同期平均 close all; clear all; pi = 3.14159; Samp2=input('您需要几组信号做同期平均?') Samp1=1000 %设置采样精度 t = lins ...