C语言第四讲,typedef 关键字,以及作用域
C语言第四讲,typedef 关键字,以及作用域
一丶typedef关键字
在C语言中,有typedef 关键字,这个关键字的作用就是允许你为类型定义一个新的名字,也就是 起个别的名字
例如:
typedef unsigned int DWORD
那么以后,我们定义unsigned int 类型的变量的时候,这不用敲写 unsigned int 了.直接DWORD即可.
例如:
DWORD name = 0;
一般常常用在 结构体的定义,和函数指针上.
例如:
typedef struct MyStruct { int a; int b; }MyIntStruct;
那么新的类型就是 MyIntStruct ,而这个类型就免去了你每次定义的时候加关键字了.
例如:
int main { // struct MyStruct IS; // 没定义前,要使用上面 MyIntStruct IS; IS.a = 10; return 0; }
二丶作用域
在C语言中,编写的代码有作用域的限制.
作用域是什么?
简而言之,当我们定义变量的时候,这个变量的访问.要在一定区域内才能进行访问.
比如你在A函数定义变量a,在B函数定义变量b,那么B函数是不能使用a变量的.
例如:
#include <stdio.h> void printfB() { int b = 11; printf("%d\r\n",b); } void printfA() { int a = 10; printf("%d\r\n",a); }
其中上面是函数作用域, 也就是 { } 块语句包含的.
代码块作用域:
代码块作用域主要靠 { }来区分.
例如:
int main() { int a = 10; { int a = 11; printf("%d",a); //块语句包围 } printf("%d",a); return 0; }
如果这样定义,则a不会重定义.且a = 11,在代码执行到 } 结束后.也不复存在了.
文件作用域:
文件作用域就是代码外面定义的. 也就是说全局变量. 全局作用域,在当前文件的任何一个位置都可以访问的.
例如:
int a = 10; //外面声明即可. int main() { printf("%d",a); return 0; }
作者:IBinary
坚持两字,简单,轻便,但是真正的执行起来确实需要很长很长时间.当你把坚持两字当做你要走的路,那么你总会成功. 想学习,有问题请加群.群号:725864912(收费)群名称: 逆向学习小分队 群里有大量学习资源. 以及定期直播答疑.有一个良好的学习氛围. 涉及到外挂反外挂病毒 司法取证加解密 驱动过保护 VT 等技术,期待你的进入。
详情请点击链接查看置顶博客 https://www.cnblogs.com/iBinary/p/7572603.html
本文来自博客园,作者:iBinary,未经允许禁止转载 转载前可联系本人.对于爬虫人员来说如果发现保留起诉权力.https://www.cnblogs.com/iBinary/p/8452963.html
欢迎大家关注我的微信公众号.不定期的更新文章.更新技术. 关注公众号后请大家养成 不白嫖的习惯.欢迎大家赞赏. 也希望在看完公众号文章之后 不忘 点击 收藏 转发 以及点击在看功能.![微信公众号](https://images.cnblogs.com/cnblogs_com/iBinary/1827080/o_220306121308_qrcode_for_gh_b8b8f84e4988_258.jpg)
![QQ群](https://images.cnblogs.com/cnblogs_com/iBinary/1827080/o_21062107294320210621152919.png)