C语言入门基础day1

C语言入门基础



一、计算机组成

计算机由硬件系统和软件系统所组成

  1. 硬件系统由 运算器、控制器、存储器、输入设备、输出设备5大部件组成
    2.外存:读取写入速度慢,容量大,永久存储
    3内存连续读取速度
    DDR4内存大概是60GB/s的水平
    SATA ssd大概是450MB/s的水平
    机械硬盘大概是100~150MB/s的水平
    计算机语言发展:机器语言、汇编语言、高级语言

二、C语言编译过程

1.预处理:宏定义/头文件展开、条件编译、删除注释
2.编译:将预处理后的文件编译成汇编文件
3.汇编:汇编文件------>二进制文件
4.链接:将库链接到可执行程序中

三、C程序的注释

C语言中有两种注释方式,分别为:
单行注释
以 //开始、以换行符结束的单行注释:
1 //这是单行注释
多行注释
以 /* 开始 以 */结束:
/ *

这是第一行注释
这是第二行注释

*/

错误案例: /* 会去匹配最近的 */,这就导致如下下代码编译错误:
/ *这里想通过这个多行注释把所有代码全部注释掉
int main()
{
/ *
这是第一行注释
这是第二行注释
*/
printf(“我是一条被注释的可执行语句_”);
return 0;
}
/
解决办法: 使用#if 0 和#endif
#if 0
//这里想通过这个多行注释把所有代码全部注释掉
int main()
{
/

这是第一行注释
这是第二行注释
*/
printf(“我是一条被注释的可执行语句_”);
return 0;
}
#endif

四、变量和常量

1.标识符使用规则

1.1 标识符只能包含 数字、字母以及下划线。
1.2 标识符不能以数字开头。
1.3 标识符区分大小写

2.关键字(32个)

2.1数据类型关键字(12个):char、short、int、long、float、double、unsigned、signed、struct、union、 enum、void
2.2控制语句关键字(12个):if、else、switch、case、default、for、do、while、break、continue、goto、 return
2.3存储类关键字(5个):auto、extern、register、static、const
2.4其他关键字(3个):sizeof、typedef、volatile

3.数据类型

3.1基本类型:

3.1.1 整型:int、short、long
3.1.2 字符型:char
3.1.3 浮点型:float、double

3.2构造类型

3.2.1 数组类型 [ ]
3.2.2 结构类型 struct
3.3.3 联合类型 union
3.3.4 枚举类型 enum

3.3 指针类型
(char *、int *、long *…)

4.常量 :程序运行过程中不能被修改的量

5.变量:程序运行过程中能被修改的量:

	int a=0;
	a=10;
	printf("a=%d",a);
5.1语法:C语言变量要使用必须先声明

	int i, j, k;
	char c, ch;
	float f, salary;
	double d;

6.整形:
长度:
short(短整型) 长度:2字节
int(整形) 长度:4字节
long(长整型) 长度:8字节(64位)4字节(32位)
long long(长长整型)长度:8字节
格式: int a=2;
输出:6.2打印格式
计算长度函数:sizeof()

小细节:1Byte = 8bits

6.1有符号数和无符号数
有符号数:short/signed short(系统默认short就是有符号数)int/singed int...
无符号数:unsigned short、unsigned int ...

6.2打印格式

%hd 输出short类型
%d 输出int类型
%ld 输出long类型
%lld 输出long long类型
%hu 输出unsigned short类型
%u 输出unsigned int类型
%lu 输出unsigned long类型
%llu 输出unsigned long long类型

7.字符型(char)

长度:1字节
格式:用 ' ' (英文单引号)引用 char ch='A';
输出:%c
#include <stdio.h>
int main()
{
  char ch = 'A';
  printf("char: %c\n", ch);
  return 0;
}

7.1 ASCII码:
A---Z  ---> 65---90 
a---z --->   97---122

7.2 大小写转换
	7.2.1 大写转小写: +32
	int main()
	{
	  char ch1 = 'A',ch2;
	  ch2=ch1+32
	  printf("char: %c\n", ch2);   //输出 a
	  return 0;
	}
	7.2.2 小写转大写:-32
	int main()
	{
	  char ch1 = 'a',ch2;
	  ch2=ch1-32
	  printf("char: %c\n", ch2);   //输出 A
	  return 0;
	}
7.3 转义字符
\n 换行(LF) ,将当前位置移到下一行开头
\r 回车(CR) ,将当前位置移到本行开头
\t 水平制表(HT) (跳到下一个TAB位置)
\\ 代表一个反斜线字符""
\' 代表一个单引号(撇号)字符
\" 代表一个双引号字符
\0 数字0 字符串结束标记

8.浮点型(float、double) :可以带有小数

长度:4字节
格式:float a = 26.095;  
输出:%f  %lf
	int main()
	{
	  float a = 26.095;
	  printf("a = %f\n",a);
	  if(a == 26.095)
	 {
	    printf("a == 26.095\n");
	 }
	  else
	 {
	    printf("a != 26.095\n");
	 }
	}  (输出结果 a=26.0949999....,只是无限接近26.095)

总结

1.计算机由CPU(计算器、控制器)、存储器、输入设备、输出设备组成

2.计算机语言发展:机器语言、汇编语言、高级语言

3.程序文件编译过程:

3.1 预处理:宏定义、头文件展开、条件编译、删除注释
3.2 编译:编译成汇编语言文件
3.3.汇编:将汇编语言生成目标程序(二进制文件)
3.4 链接:链接程序中用到的库文件

4.单行注释:
//注释一行,多行注释/**/注释代码块。多行注释不能嵌套,解决嵌套问题使用条件编译#if#endif语句

5.标识符包括关键字,标识符规则:
5.1 只能包含数字、字母和下划线
5.2 不能以数字开头
5.3 区分大小写

6.总结来说常量分为值常量:包括整形、字符型、字符串等。和常型变量:使用const修饰的变量

7.使用变量要先定义,尽量用英文表示,做到见名知其意,不能用关键字

8.字符型数据的本质是解析成ASCII码的数字

9.浮点型数据不能使用等号判断,要使用范围判断

10.进制的不同就是每个位的位权的不同

11.数值在计算机系统中都是以补码形式存储的

  • 34
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值