C语言基本数据类型-笔记(二)

C语言基本数据类型

一、C语言概念

1、介于汇编语言和高级语言之间的中级语言,具有低级语言的特性,能编写系统软件,又是一种结构化的程序设计语言,即具有高级语言的特性,可用于编写应用软件。
2、编译原理:
源文件(.c)和头文件一起经由编译器编译成为目标文件(.obj),目标文件和库文件及其他用户生成的目标文件由链接器链接形成可执行文件(.exe)。

二、C语言程序结构和注释

1、工程由一个或多个.c文件构成;每一个.c文件可由预处理命令,全局声明变量,函数和注释组成。
2、注释用于描述特定的命令、函数或程序,增强程序的可读性
多行注释用/开始,用/结束(标准C语言)
一行注释用//标出
3、注释符用法
方式1 一行:以//开头,//之后的部分即为注释,但只能在一行,不能跨行。
方式2多行:以/开头,以/结尾,两者中间的部分即为注释,可跨行,不限定在一行。
方式3 多行:有时需要把一段代码注释掉,但不删除程序,若该段代码内部已存在注释符,使用方式2则不一定如愿,解决方法:使用#if指令,如下所示:
#if 0
程序
#endif

三、变量

1、概念
(1)变量:内存中的一个区域,其值可以改变,通过变量名加以标识和区分,变量有类型和值。
(2) 变量定义和声明的区别
变量定义:为变量分配存储空间和指定初始值。
变量声明:表明变量的类型和名称。
(3) 变量定义和声明的联系
定义也是声明,因为定义变量时也指定了它的类型和名称。通过使用extern关键字声明变量名而不是定义它,故extern声明不是定义。
任何变量在使用前就要被定义或声明,在一个函数中,同名变量只能定义一次,但可被声明多次,变量定义会被分配存储空间,但是变量声明则没有。
2、变量的初始化
(1)定义时初始化变量 int num1,num2 = 12;
(2)定义后初始化变量
int num;//定义
num = 12;//初始化
sizeof(a);//测变量长度
printf(“int:%d\n”,sizeof(a)); //输出4

注:
一般变量命名:须有含义,如int inum; -> inum中i表示整型,num表示数量
在同一语句中可声明多个同类型的变量:int page_number, paper_width;
3、变量分类
(1)变量划分方式1:按作用域分为全局变量和局部变量
[file.h]

int text();

[file.c]

#include <stdio.h>
extern double a;//这里使用main.c文件中的全局变量,并自动初始化为0
int text()
{
  printf("a2=%d\n",a);//输出a2=0
}

[main.c]

#include <stdio.h>
#include "file.h"
double a; //定义全局变量,本文件内所有函数都可使用
int main()
{
	int a=3; //定义局部变量,只能在本函数使用
    //局部变量作用范围内,全局变量被屏蔽
	double ID[3]={1,2,3};
	printf("a1=%d\n",a);//a1=3
	text();
	return 0;
}

(2)变量划分方式2:按生命周期即存储类别分为自动(auto)变量和静态(static)变量和寄存器(register)变量及外部(extern)变量。
extern和static数组元素自动初始化为 0。
自动变量、静态变量的使用:

#include<stdio.h>

int main()
{
	int f(int);
	int a=2,i;
	for(i=0;i<3;i++)
	{
		printf("%d ",f(a));//输出7 8 9
	}
	printf("\n");
	return 0;
}

int f(a)
{
	auto int b=0;//自动变量,auto可省略
	static c=3;//静态局部变量,能够保持原值,下次调用时直接用
	//第1次:c=3;第2次:c=4;第3次:c=5,故第二次调用时,c值为4,不再是3
	b+=1;
	c+=1;
	return(a+b+c);
}

四、常量(保持不变的数据值)

1、类型
(1)数字/整型常量:
十进制–没有前缀,0~9的数字组成 示例:12322、0、-232
八进制–以0打头,由0~7的数字组成 示例:023
十六进制–以0X或0x打头,由0~9、A~F或a~f组成 示例:0xff、0X2A
(2)字符串常量:“NAME”
(3)数字/浮点常量:9.3
(4)字符常量:‘A’, 实际上存放的是65
(5)符号常量:#define NUM 100 宏定义
(6)const关键字:const int SIZE = 10; char a[SIZE];//编译出错,SIZE不是常数

2、常量与后缀
123U,123u 无符号整型;
123L,-123l 长整型
0.123F,3.1415f 单精度浮点型

五、标识符与关键字

1、概念:变量、函数、标签和其他各种用户定义的对象的名称都称为标识符。
2、标识符命名规则 (C语言中的标识符区分大小写)
(1)以字母(AZ,az),数字(0~9),下划线(_)开头;
(2)第一个字符须为字母或下划线;
(3)不能含特殊字符,不能用关键字作为标识符。如:oh!god、start…等;
(4)不能用系统内置标识符printf、FILE、date、RED等作自己创建的标识符使用。
3、C 语言的关键字共32个:
在这里插入图片描述

六、数据类型分类

C语言中数据有常量和变量之分,它们分别属于以下这些类型:
在这里插入图片描述
基本数据类型说明:
1、int类型
(1)存储数字数据,不能存储类似于”Alan”或”abc”等任何其他类型的数据
(2)不管是32位系统下,还是64位系统下,不论是windows还是unix都是4个字节。

2、char 类型
字符型变量的底层存储就是整数,对于字符而言存储的是该字符的ASCII码。
(1)存储一个字符信息
(2)声明方式:char gender;
gender = ‘M’;
3)分配8位(1 个字节)的内存空间 示例:‘a’、’$’、’%’、‘1’
注:实质是占一个字节的整型数(小整数)

3、float 类型
(1)存储整数或包含小数位的值
(2)有效数字是 6 位
(3)分配32 位(4 个字节)的内存空间 示例:23.05、56.5、32.0、3.14159

4、double 类型
(1)存储超出float类型大小的限制的值
(2)有效数字是 17 位
(3)分配64 位(8 个字节)的内存空间 示例:123.45678901234567

5、void 类型
在函数声明中使用,代表不返回任何值;与指针搭配使用。作用–告诉编译器没有任何类型的值
不能像其它数据类型一样来声明变量,如:void num; //这是错误的声明

6、派生数据类型
概念:通过修改四种基本数据类型以适应不同的情况而产生的数据类型。
如:ungned int;
在这里插入图片描述
常用ASCII码表:
在这里插入图片描述
3、编写程序注意事项
注:
①编写程序时 ()圆括号 {}括弧 ;分号都要是英文状态,否则编译出错。
②程序中,有且仅有一个main函数,变量名不能重复
③源程序(.c)→ 编译 →目标文件(.obj)→链接→可执行文件(.exe)
④常见错误:语法错误;逻辑错误。
查找错误时应从第一个错误开始找,双击错误提示,找到所在行,错误多在该行及上下两行。
⑤程序在存储位置打开时,若需要在执行.exe文件时结果保持不动,可在程序最后写入while(1)语句形成死循环即可。

编辑 2020-04-17 23:21 首次编辑
修改 2021-03-05 23:29 增加部分类型变量值范围及变量分类规范编写
修改 2021-06-12 16:40 增改文字结构及排版

注:本文旨于作为自己的学习笔记,不作他用。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值