[C语言学习]C语言程序设计基础(一)[点击传送]
大家好这里是三岁,C语言是各类语言的基础,由于个人学习需要特别开设了C语言基础专题,内容不一定深入,都是基础知识,还是白话C语言,最简单的方式带领大家学习不是那么容易理解的C语言!(该系列应该每周末更新直到系列结束,有问题的及时留言,会马上修改!)
基本数据类型
数据类型是按照规定形式表示数据的一种形式,不同类型占据的课件大小也不尽相同。
类型 | 英文名 | 占用空间大小 |
整型 | int |
4B |
浮点型 | float |
4B |
字符型 | char |
1B |
- 衍生数据类型
整型(
int
):基本整型(
int
):4B短整形(
short int
): 2B无符号整型(
unsigned int
):4B长整型:(
long int
): 8B
浮点型(float
):
单精度浮点型(float
):4B
双精度浮点型(double
):8B
整型(int
)
- 整型数据可以有修饰符
short
、long
,后面的int
可以省略,默认的整型数据常量是int
类型。 - 整型数据可以是十进制(默认)、八进制、十六进制三种。(注:没有二进制)
进制常数类型 | 表达方式 | 举例 |
十进制(默认) | 普通表示 | 123 |
八进制 | 0开头(零) | 0123 |
十六进制 | 0x或0X(零x) | 0x123 或 0X123 |
八进制:八进制整型常量(常数)必须以0
(零)为开头,即0
是八进制的前缀。数码为0~7
十六进制:十六进制整型常量(常数)的前缀为0x
或0X
,其数码为0~9
,a~f
或A~F
注:C语言根据前缀区分数据进制,所以不能够写错。
- 短整形(
short
)取值范围:
[-32768 ~ 32767](signed int
)
[0 ~ 65535](unsigned int
) - 长整型(
long int
)表达方式(末尾加上l
、L
):举例123l
或123L
- 可以加上
unsigned
和signed
表示是否有符号,如果unsigned
为无符号类型,signed
为有符号类型。默认是有符号类型。
注:此处长整型和基本整型所占的空间相等(实际情况是不同位数的电脑实际情况不同)
short 并不一定真的”短“,long 也并不一定真的”长“,它们有可能和 int 占用相同的字节数。
在 16 位环境下,short 的长度为 2 个字节,int 也为 2 个字节,long 为 4 个字节。16 位环境多用于单片机和低级嵌入式系统,在PC和服务器上已经见不到了。
对于 32 位的 Windows、Linux 和 Mac OS,short 的长度为 2 个字节,int 为 4 个字节,long 也为 4 个字节。PC和服务器上的 32 位系统占有率也在慢慢下降,嵌入式系统使用 32 位越来越多。
64位系统:
浮点型
- 浮点型数据可以带小数,通常情况下默认为
double
类型 - 可以加上
unsigned
和signed
表示是否有符号,如果unsigned
为无符号类型,signed
为有符号类型。默认是有符号类型。 - 浮点型(
float
)的表达方式:(在数值末尾加上f
或F
):例如:1.234f
或1.234F
- 存储空间和值的范围
类型 | 字节数(B) | 有效数字 | 取值范围 |
float | 4 | 6 | 0 以及1.2 * 10-38 ~ 3.4 * 1038 |
double | 8 | 16 | 0 以及2.3 * 10-308 ~ 1.7 * 10308 |
- 可以用科学计数法进行表示浮点型。
把数学中(*10)表示为E
或e
:
例:
1234.56 可以表示为1.23456e^3
或1.23456E^3
还可以表示为:123456e^-2
或123456E^-2
以此类推。
注:字符串型和字符型的内容请查看 基础(一)(点击跳转)
标识符和关键字
- 标识符:用于标识的符号语言,常作为:变量、常量、类型、函数、语句等程序成分对象。
- 标识符只能够用字母、数字、下划线组成其中数字不能够开头。不能够使用关键字和保留字。
其中define
、undef
、include
、ifdef
、ifn
、def
、endif
、line
等词虽然不是关键字但是在C语言的预处理中不建议或谨慎使用。
注释
在编程语言中为了解释语句或函数等内容的意思会对代码或代码块进行注释,以增加代码的可读性。每种语言的注释方式不尽相同,让我们一起看看C语言的注释:
单行注释:// (使用双斜杠)只能够用于本行//后所有内容均不会被计算机编译
多行注释:/* …… */ 在省略号内的所有内容都不会被编译,可以用于多行。
#include<stdio.h> void main() // 定义空主函数(程序入口) { int add(int x, int y): { /* 新建函数完成x+y的功能 */ return x+y; }
运算符和表达式
- 变量声明通用表达式:
类型 变量名 [=初始值];
变量名:标识符符号
变量:用于存放数据(就是数据地址及数据预留空间的表示)
基本算数运算符
符号 | 作用 |
+ | 加法 |
- | 减法 |
* | 乘法 |
/ | 除法 |
% | 模(取余) |
注:除法中接过取决于除数与被除数的类型。
如果除数与被除数都是整数输出的结果也是整数舍弃小数部分。
如果都是整数但是有一方为负数则需要看实际情况,不同设备取舍不同(大多数是向“零”取整)
- 运算方向:自左向右
自增与自减
C语言提供了极具特色的运算符(单目运算):自增运算和自减运算,作用为使变量增加(减少)1
++i
、--i
为前置加和前置减(先运算后输出)
i++
、i--
为后置加和后置减(先输出后运算)
++i 这个就是先运算运算后再输出(白话:出门前先完成加1再出门)
i++这个是先进行输出再进行运算(白话:出门比较急等回来以后再加1或者可以理解为出门的时候是没有变的,刚刚出门就加1了)
注:自增和自减只能够用于变量,不能够用于常量和表达式。
赋值运算符
- 赋值运算符:赋值符号"="就是将一个数据赋值给另一个变量
变量 <赋值运算符> 表达式
赋值运算方向:自右向左
- 复合运算符
运算符 | 表达式示例 | 运算关系 |
+= | a+=3 | a=a+3 |
-= | a-=3 | a=a-3 |
*= | a*=3 | a=a*3 |
/= | a/=3 | a=a/3 |
%= | a%=3 | a=a%3 |
今天的资料就整理到这里了,非常感大家的关注,如果好就来个一键三连吧!
[C语言学习]C语言程序设计基础(三)[点击传送]