编程是星辰大海,想要在这片编程之海扬帆,首先要先造一支船,本篇博客带你初识C语言这片海洋,既是初识,也就是大概的领略一下,对C语言有个大概的了解,之后我们再回来仔细的学习每个知识点,咱们从宏观到微观,见证C语言 语法的奇妙。
本文使用的是 vs2019编译器。
注意,本文不包含如何配置变量,如何安装编译器,而是一些基础的语法。
hello worldc语言是从主函数的第一行开始执行的
所有C语言代码都得有main函数--入口
#include// #include的意思是“包含”,包含stdio.h的文件 //stdio -standard input output标准输入输出 (std- standard)(i- input)(o- output)。 //int就是整型的意思;main前面的int表示main函数调用以后返回一个整型值。 int main()//主函数-main,是程序的入口,main函数有且有一个。 { printf("hello,ccccn");//等于print function--打印函数, "n" 表示输出后换行 //printf是库函数,是C语言本身提供给我们使用的函数。所以要调用 #include return 0;//return就是返回的意思,返回 整数int 0。 }
数据类型
-
为什么出现这么多类型?
char //字符数据类型 short //短整型 int //整型 long //长整型 long long //更长整型 float //单精度浮点数 double //双精度浮点数
-
每种类型的大小是多少? 单位是dyte(字节)
char //1 short //2 int //4 long //4 or 8 long long //8 float //4 double //8为什么出现这么多类型?
char //字符数据类型
short //短整型
int //整型
long //长整型
long long //更长整型
float //单精度浮点数
double //双精度浮点数
//%c--打印字符
//%d--打印整型
//%f--打印浮点数字
//%p--以地址的形式打印
//%x--打印16进制数字
//%lf---打印双精度浮点型数字,打印double类型最好使用这个 %lf
//%s----打印字符串
//char-字符类型
int main()
{
char ch ='A';//向内存申请了一块空间,空间的名称叫 ch,用这块空间来存放 “A”
printf("%cn",ch);// %c--打印字符格式的数据,打印结果为:A
return 0;
}
//int--整型
int main()
{
int age=20;
printf("%dn",age);// %d--打印整型十进制数据,打印结果为:20
return 0;
}
//short int--短整型
//long--长整型
int mian()
{
long num=100;
printf("%dn",num);打印结果也是:100
return 0;
}
//float--单精度浮点类型
int main()
{
float f = 2.0;
printf("%fn", f);//打印结果为:5.00000。float类型能包含五个小数点。
return 0;
}
//double--双精度浮点类型
int main()
{
double f = 3.14;
printf("%fn", f);//这里的打印可以用 %f,但是最好还是使用 %lf,表示使用双精度打印。
return 0;
}
每种类型的大小是多少?
计算机中的单位 bit-比特位 < byte-字节 < kb < mb < gb < tb < pb
一个bit(比特位)只能存放一个 二进制0或1。所以学一下二进制和十进制的转换。
1byte=8bit
1kb=1024byte
1mb=1024kb
1tb=1024mb
1pb=1024mb
//计算各个类型占用空间
int main()
{ //sizeof这个函数是计算大小的函数,如下,可以测试以下数据类型和变量所占空间的大小。
//sizeof 的单位是 字节 byte。
printf("%dn", sizeof(char));// 1byte
printf("%dn", sizeof(int));// 4byte
printf("%dn", sizeof(long));// 4byte,long可以是4 or 8byte.
printf("%dn", sizeof(short));// 2byte
printf("%dn", sizeof(long long));// 8byte
printf("%dn", sizeof(float));// 4byte
printf("%dn", sizeof(double));// 8byte
short int age=20 //short对应两个字节,向内存申请两个字节,也就是16个bit位。能存放的数 2^16-1=65535。
//如果数据不是很大推荐使用小整型,bit位越少,越能节省空间。
}//打印出来的这些数字就是“byte--字节”
#include
int main()
{
// 年龄 20
short age = 20;//向内存申请2个字节=16bit位,用来存放20
float weight = 95.6f;//可能系统会报错,因为系统把95.6当作双精度浮点归到double类型;在95.6后面加一个“f”,说明为单精度浮点即可解决。向系统申请4个字节,存放小数。
//据C语言标准 sizeof(long) >= sizeof(int),根据平台不同,long可能是4或8.
return 0;
}
变量、常量
常量:
生活中有些值是不会变的(圆周率,身份证号,血型,性别等等)
变量:
有些值是可以变的(年龄,体重,薪资等)
定义变量的办法类型 + 变量名 + 赋值
int age=150; float weight=45.5f; char ch='w';变量的分类
-
局部变量
-
全局变量
-
全局变量--定义在“代码块({})”之外的变量
-
局部变量--定义在“代码块({})之内的变量”
-
局部变量名和全局变量名相同时,不会有冲突,但是局部变量优先。 建议全局变量和局部变量的名字不要相同,容易产生bug。 局部变量只能在自属局部的代码块{}中使用。
//计算各个类型占用空间
int main()
{ //sizeof这个函数是计算大小的函数,如下,可以测试以下数据类型和变量所占空间的大小。
//sizeof 的单位是 字节 byte。
printf("%dn", sizeof(char));// 1byte
printf("%dn", sizeof(int));// 4byte
printf("%dn", sizeof(long));// 4byte,long可以是4 or 8byte.
printf("%dn", sizeof(short));// 2byte
printf("%dn", sizeof(long long));// 8byte
printf("%dn", sizeof(float));// 4byte
printf("%dn", sizeof(double));// 8byte
short int age=20 //short对应两个字节,向内存申请两个字节,也就是16个bit位。能存放的数 2^16-1=65535。
//如果数据不是很大推荐使用小整型,bit位越少,越能节省空间。
}//打印出来的这些数字就是“byte--字节”
#include
int main()
{
// 年龄 20
short age = 20;//向内存申请2个字节=16bit位,用来存放20
float weight = 95.6f;//可能系统会报错,因为系统把95.6当作双精度浮点归到double类型;在95.6后面加一个“f”,说明为单精度浮点即可解决。向系统申请4个字节,存放小数。
//据C语言标准 sizeof(long) >= sizeof(int),根据平台不同,long可能是4或8.
return 0;
}



