C语言数据类型总结,预处理指令,typedef,static&extern,递归笔记
来源:互联网 发布:12123但确实无数据返回 编辑:程序博客网 时间:2024/06/08 10:50
1.数据类型总结
1>基本数据类型
int
long int = long 8byte,占位符:%d
short int = short 2byte,占位符:%d
unsigned int = unsigned4byte 占位符:%2d
signed int= signed 4byte,占位符:%d,%i
float
double8byte,占位符:%f
float 4byte,占位符:%f
char 1byte,占位符:%c
char类型在内存中存放的是其ASCII值 ’A‘ = 65
2>构造类型
数组 :由同种数据类组成
格式:数据类型 数组名[元素个数]
结构体:由不同类型数据组成
格式:定义类型,再利用类型定义变量
struct Student
{
char *name;
int age;
};
struct Student stu = {“Jack”,“18”};
指针类型
变量的定义 int *p;
间接操作变量的值
int a = 10;
p = &a;
*p = 20;
枚举类型
定义 enum Sex{};
enum Sex s = {};
使用场合:当一个变量只允许由几个固定值组成
2.预处理指令
代码编译成0和1前的指令,所有预处理指令都#为开头
预处理指令分为3种 宏定义 条件编译 文件包含
预处理的位置是随便写都可以
预处理指令作用域:从编写指令的那一行开始,一直到文i
宏名一般用大写或k开头,变量名一般用小写
双引号“”里面的count只会输出count,不输出其他数值
宏定义
不带参数的宏
带参数的宏 :带参数的宏比函数效率高
宏只会替换数值(文本对换),不计算。参数中每一个数括上括号,结果值也要括上括号
如:#define Su((v1,v2),(v1+v2))
取消宏定义
#def Sum;
条件编译
满足某条件才参与编译,不满足不编译。#end if 不可缺 写完#if 要立刻写#end if
前面是宏
#if 条件1
语句
#else if 条件2
语句
#else
语句
#end if
文件包含
<>表示系统自带文件,“”表示定义文件
不允许循环包含,比如a.h包含b.h,b.h包含a.h
为了防止同样声明出现多次,在.h文件中加上条件编译,其名字取决于文件名
#if def LISHI_H
#define LISHI_H
int sum(int a,int b)
#end if
3.关键字 typedef
作用:给已经存在类型起一个行的名称
使用场合:基本数据类型,指针,结构体,枚举,指向函数的指针
*指向函数的指针与普通不同: typedef int(*Mysum)(int,int); 文件名写中间
使用注意 :#define :是文本的对换typedef:是定义新的类型
相同点:更改文件名不同点:定义类型
4.staic&extern对变量的作用
定义一个内部变量 static(int b);只在改文件中使用
声明一个外部变量 extern int a;==int a;里面出现的int a都是同一个,而且只能写在函数外面
static对局部变量的影响:延长局部变量的生命周期,程序结束的时候,局部变量就会被销毁
并没有改变局部变量的作用域
所有函数共享一个变量(性能优化)
使用场合:同一个变量使用多次,经常被使用,而且值不改,就用static
5.递归
定义:自己调用自己,函数每次调用新的函数,递归i找规律
使用注意:不能少if
递归成立必须有两个条件:函数自己调用自己
必须有一个明确的返回值
- C语言数据类型总结,预处理指令,typedef,static&extern,递归笔记
- 黑马程序员--c语言:结构体、枚举、预处理指令、typedef、static与extern、递归思想
- 黑马程序员——C语言学习——预处理指令、extern与static、typedef、递归
- 黑马程序员 C语言 - 09 预处理指令、typedef、extern、static
- C语言—预处理指令、static和extern、递归
- 黑马程序员--ios基础--c语言--预处理指令、typedef、static和extern、递归
- 黑马程序员——C语言的关键字 typedef,static,extern和预处理指令
- 预处理指令、typedef、static和extern
- 【C语言学习笔记】关键字:typedef、static和extern
- 黑马程序员——c语言的全局变量和局部变量,static和extern,预处理指令
- C语言热身——预处理指令、变量类型、static和extern、结构体、枚举
- C语言基础之类型定义 typedef、static和extern及递归
- 黑马程序员------C语言-----宏定义、typedef、static和extern、递归
- C语言预处理指令总结
- C语言--预处理指令、枚举、递归函数
- C语言学习笔记(六)宏定义,typedef,static和extern
- 黑马程序员-C语言笔记(十)宏定义,typedef,static和extern
- 黑马程序员——C语言知识点总结之预处理指令和typedef关键字
- 制作杂志级图表的第二步:突破excel的图表元素
- Java的Lock小结
- 伪元素::after和::before
- Android 中Touch(触屏)事件传递机制
- Maven入门(手动创建项目)(1)
- C语言数据类型总结,预处理指令,typedef,static&extern,递归笔记
- 一年之感受
- OCP 1Z0 051 QUESTION NO: 47
- C++ 长方体继承自矩形
- MFC----窗口的重绘
- Vold工作流程分析学习
- 微信网页支持
- 用sqoop实现mysql和hive数据互导
- win7 java 环境配置