vlambda博客
学习文章列表

2020最新C语言编程基础入门知识整理

说道C语言肯定很多学计算机的小伙伴都应该知道吧,不过很多小伙伴都很苦恼应该怎样学习C语言。所以小编做了一期C语言知识整理教程,仅提供给大家学习。

C语言基本认识

看完小编这篇文章呢你就应该学会掌握:

  1. 标识符命名规则

  2. 常量与变量

  3. 基本数据类型

  4. 常量运算符及表达式

  5. 运算符的优先级及结合性

标识符

标识符是由字母、数字和下划线三种字符组成的字符序列,用于标识程序中的变量,符号常量、数组、函数和数据类型等操作对象的名字。绝大多数情况下,标识符由字母和下滑线开头。其他花里胡哨的就不用想了。

例如:

1sds 、 *dsa、!45dsd、大赛地方

用户自定义标识符:

  1. 标识符必须以字母或者下户线开头,并且除了字母,数字和下划线外,不能含有其他的字符。

  2. 标识符的命名要见名知意,总不能随便定义吧,这样可读性不强。

  3. 标识符命名不能和关键字一样(比如if,while ,case ,do ,for ,const ,char ,union,void ........)

常量与变量

常量(constant)是指系统运行过程中其值不能被改变,变量及程序运行的时候他的值可以被改变

include <stdio.h>
 #define PI 3.1415
int main()
{
 float r,s;
 r=5;
 s=PI*r*r;
 printf("%f",s);
 return 0;
}

这个大家应该都熟悉吧,计算圆的面积。其中用#define 定义的PI就是一个常量

变量概念:

每个变量在程序运行的时候计算机都会给他自动分配一定量的内存空间,所以变量都有类型比如整型,浮点型,字符型。变量的定义还得遵循标识符命名规则,本人习惯用小写命名。

int main()
{
 int a=10;//变量初始化
 /*int b;
 b=10; 这个叫做赋值不要和初始化弄混淆了*/
 printf("%d",a);
 return 0;
}

其中a就是一个变量,变量其实可以看做一个小房子,计算机中的内存就如一个住宅区一般,变量的命名其实就是房子的门牌号。计算机通过门牌号找到你变量的存储空间,然后在引用其中的值,其实指针的话原理就是这样的(这里就不过多介绍指针了,如果有兴趣的小伙伴可以关注我看我后续的更新)。

整形常量

常量形式:十进制就是由+(-)号开头,正号可以不写。八进制由数字0开头。十六进制由0X或者0x开头。

例如:

int a=10;//十进制
int a=012//八进制
int a=0x12//十六进制

整型常量的类型:

int ,short int ,long int ,unsigned int ,unsigned short ,unsigned long .

int类型其值的范围:-32768~+32767

可以将精度小的值赋值给精度大的,比如int 可以赋值给long int 。但是像如果范围之外的值赋值给变量就会导致出错。例如:4000赋值给unsinged int 是可以的,但是如果你将9999赋值给unsinged int 就会导致数据的溢出。

long int ,short int 可以直接用long,short表示。无符号数只可以存放不带符号的整数,不能春芳负数。例如:-6 -7 -8 -5656这些用unsigned修饰变量都是不可以的。

整形变量

变量的命名前面讲了,接下来看看如何定义整形变量

int a,b;
float a,b;
long a,q;
unsigned short f,s;

实型数据

指数表现形式:

3.0E+5表示3.0*10^5,尾数可以是整数也可以是小数,但是指数只能是整数。就算尾数与指数是0和1的时候也不能省略。0e0,1e0,1E0,0e5这些都是合法的但是像6.7e, E-1这些都是不合法的前面应该为6.7e1,后面应该改为1E-1

单精度(float)占4个字节(32位操作系统),双精度(double)占8个字节。单精度可以提供7位有效数字,双精度的话提供15~16位有效数字。

float a;
a=111.1111111111

由于float只提供7位所以后面6位都是多余的,不起作用。

字符类型数据

C语言中都用单引号表示字符,例如:'A','B','C','D',更多的字符可以查看ascii码表,字符串类型的数据的话就用双引号括起来,例如“dasd” “casc”.......

算术运算符和算数运算表达式

像加(+) 减( -) 乘( * ) 除( / ) 取余(%)

这里注意除法,如果两个数相除,两个数都为整数的话得到的数也是整数,两个数中有一个是实型数据的话得到的数就是双精度的实行数据(double)

例如:

5/10结果为0,5.0/10结果就为0.5;

取余的话要求运算符必须是整型数据,而且余数符号和被除数相同

例如:

2%-5的值为2,因为2是被除数,所以余数不是负数是正数。-2%5的值就是-2了。

算术运算遵循优先级的问题。

()的优先级是最大的,然后乘数取余都比加减的优先级高,优先级高的先进行运算。

逗号运算符和自增自减

逗号运算符是由“,”将表达式连接起来,逗号表达式的结合性是自左向右的,最后输出最右边的值

例如:
a=5,a*a; //这里a的值为25
a=5,a*a,a*2//这里a的值是10系统虽然会算a*a但是最后返回的值是最右边表达式的值。
a=(b=5,6)//a的值为6

自增和自减其实原理是一样的,就是一个先后的问题;

j=3;k=++j;//这里k=4,j=4
j=3;k=j++//这里k=3,j=4
j=3;k=--j;//这里k=2,j=2
j=3;k=j--;//这里k=3,j=2

学习从来都不是一个人的事,如果你感觉小编的这篇文章对你有帮助的话,可以关注小编,小编会持续更新后续的内容。如果你在学C语言的道路上还感觉到迷茫的话,

最后小编推荐一个学C语言/C++的学习裙【  141622001  】,无论你是大牛还是小白,是想转行还是想入行都可以来了解一起进步一起学习!裙内有开发工具,很多干货和技术资料分享

这些是C/C++能做的 

服务器开发工程师、人工智能、云计算工程师、信息安全(黑客反黑客)、大数据 、数据平台、嵌入式工程师、流媒体服务器、数据控解、图像处理、音频视频开发工程师、游戏服务器、分布式系统、游戏辅助等