c学习阶段总结
2015-04-03 17:15
274 查看
第一天
一.注释的使用(1.// 2.、/**/ )
二.进制的转换(常用进制:10进制、2进制、八进制、十六进制 )
目标进制 口诀十进制: 按权就和 转化为其他进制:连除倒取余
二进制:101010
八进制:0123
十六进制:0xabc
三、基本数据类型
char(1个字节)int(32位系统下占用2个字节,64位操作系统下占用4个字节)
long(4个字节)
float(4个字节)
double(8个字节)
4.强制类型转换
由高精度到低精度转换将会丢失数据printf("%d\n",(int)35.5); 输出结果:35
由低精度到高精度转换,没有问题
5.运算符
5.1算术运算符:%、++、- -5.2双目运算符:&&、||
5.3三目运算符:a>b?a:b;
5.4逻辑运算符:&&、|| 、! 存在短路情况(即如果符号前面的运算已经能判断出结果了,那么后面的运算将不再执行)
5.5关系运算符:>、<、 !=、==、>=、<=
6.输入输出函数(stdio.h头文件引入)
printf("hello");***幻影回车符(连续输入多个字符出的问题)
7.变量与常量
第二天
一、bool类型的使用,常用于循环判断语句,需要导入#include<stdbool.h>
二、分支语句
1.if2.if-else
3.if-else if-else if-else
4.if ()
{
if()
{}
}
5.swich-case
三、枚举
定义:enum 枚举名称 {a,b,c}第三天
1.循环
whiledo-while
for
第四天
1.数组1.1数组必须不能越界
1.2数组必须要有长度
2.数组的遍历
用for循环进行数组的遍历
求数组的最值
3.冒泡排序
**优化:
判断是否进行过排列,如果没有进行排列就说明已经排好了序,就不必再费资源去一轮轮的比较了。
4.break; continue的区别
break是终止循环
continue是终止本次循环进行下一次循环
5.字符数组
第五天
1.二维数组2.二维数组的遍历
3.多维数组
第六天
1.函数的定义定义:
返回值类型 函数名(形参1,形参2,...)
{
代码块
return 需要返回的值;
}
2.参数
3.变量的作用域
分为局部变量和全局变量
没有被static修饰的变量,只能在本文件中访问;
被static修饰的变量可以跨文件调用
***被static修饰的方法正好跟变量相反,只能被源文件中得其它方法调用,不可以跨文件调用
4.递归调用
第七天
1.结构体结构体的定义
结构体的赋值
结构体的使用
结构体在内存中的字节数(注意字节对齐)
比如:
struct MyStruct {
char a;
char b;
int c;
double d;
char e;
}
sizeof(MyStruct)=24;
第八天
1.内存的基本概念2.指针的基本概念
3.指针换指向
int a=0;
int *p=&a;
int b=2;
p=&b;
4.指针和数组的关系
4.1指针数组:实质上是一个数组,只不过内容存储的时指针
使用规则:通过下标取到你想要的指针,然后再按照指针的规则,去使用指针。
4.2数组指针:实质上是指针,指向的是一个数组,但是,这个指针也可以操作数组。例如:p[1]=2;
5.指针和函数的关系
函数指针:实质上是一个指针,这个指针指向一个函数的入口(函数名)
要求:这个指针的类型必须要指向的函数,类型一样
函数名:代表函数的首地址
函数指针使用规则:和直接使用函数一样。
指针作为函数参数的时候,就是将实参的地址传递到函数的内部,因为通过地址可以得到地址上的内容,所以就相当于直接操作实参。
指针还可以当做函数返回值来使用
回调函数
6.指针和结构体之间的关系
结构体指针:实质上是一个指针,指向一个结构体的首地址,结构体名不表示地址
使用规则:p->成员变量 或者*p.成员变量
结构体数组指针:实质上是一个指针,指向的不过是一个由结构体组成的数组罢了。
使用规则:先通过指针,找到想要的数组里面的元素,然后再通过点方法(p[1].age)来操作
7.数组和函数的关系
数组当做函数的参数来使用
定义:一般不指定长度
使用:直接把数组名当做参数就行了
8.关于内存的一些琐碎的知识点
计算机内存的五大分区
代码区
静态区
常量区
栈区
堆区
关于内存的一些操作函数
malloc
9.字符串的常用函数
头文件:#include<string.h>
strcmp(char *a,char *b)//字符串比较函数
strcpy(char *desc,char *source)//字符串拷贝函数
strcat(char *desc,char *source)//字符串拼接函数
strlen(char *a)//字符串长度计算函数
getchar()
putchar()
gets()
10.宏定义
define MAX 9
相关文章推荐
- 学习J2ME第一阶段总结:helloworld
- 第一阶段总结:学习与改变
- 我的FPGA之路 - 入门篇(暨我的第一阶段学习总结 )
- iOS学习阶段总结-b20120920-Quartz 2D绘图
- Qt下的OpenGL 编程(12)阶段学习总结
- Qt下的OpenGL 编程(12)阶段学习总结
- STL学习阶段总结
- Qt下的OpenGL 编程(12)阶段学习总结
- 我的js学习笔记之第一阶段总结即小作业贪吃蛇V0.1
- iOS学习阶段总结-b20120920-多媒体动画
- 嵌入式linux学习计划第一阶段总结
- 学习阶段的总结
- logic Java阶段学习总结4---巧用循环
- 数据结构学习阶段总结(一)
- 新概念英语 学习 阶段总结
- 学习CCNA的第一阶段总结
- Logic Java阶段学习总结--猜拳游戏(面向对象实例)
- ORACLE的学习笔记第一阶段总结
- 第二阶段总结之--学习篇
- 学习阶段总结