C语言的初阶学习(1)-创新互联
学习大纲
第一个C语言的程序
数据类型
变量和常量
常量
网站名称:C语言的初阶学习(1)-创新互联
URL链接:http://azwzsj.com/article/dpdosh.html
- 背景介绍
- 第一个C语言的程序
- 数据类型
- 变量和常量
- 变量的作用域和生命周期
- 常量
- 简单介绍一个计算机的结构
计算机主要由应用软件,操作系统,驱动层和硬件来组成
其中的应用软件主要包括一些日常使用的软件,例如:QQ音乐,QQ等一些软件
操作系统包括windows,macos,linux等一些计算机操作系统
驱动车则是帮助操作系统和硬件之间进行一个交互,帮助计算机更好的工作
硬件就是电脑本身的一些设备和配置
- 计算机语言的发展
计算机首先从2进制,例如001010101,在此基础上有些提出了助记符这样的定义,助记符就是指将二进制转换成更容易记住的名字,例如1001—ADD,0010—MOV等,这时的二进制便发展成了汇编语言。从此之后,计算机语言便有了新一轮的发展,从汇编语言到了B语言又到如今的C语言
第一个C语言的程序
- 这里需要说明的是,本文中使用的编译器为VS2019
#define _CRT_SECURE_NO_WARNINGS //这里是因为VS中scanf不安全,所以定义一个常量给它,在VS中要使用scanf_s才行,但是其他编译器不通用
#include//引用头文件,使其可以使用printf库函数
int main()//主函数,第一个C语言程序只可以有一个main函数
{printf("hehe\n");//在屏幕上输出一个hehe
return 0;//返回值,返回int类型的值,这里为0
- 上面是一个简单的C语言程序,一个最简单的C语言的程序要包含头文件和主函数(main),不然这个程序是不完整的。
数据类型
- C语言中有一些常见的数据类型
数据类型 | 大小(字节) |
---|---|
char | 1 |
short | 2 |
int | 4 |
long | 4 |
long long | 8 |
float | 4 |
double | 8 |
- 这些数据类型的大小是怎么计算而来的呢,这里我们可以使用C语言的一个函数size of 来实现
int main()
{printf("%d\n", sizeof(char));//%d表示返回一个整形,sizeof是计算类型占据的空间,以字节来返回的
printf("%d\n", sizeof(short));
printf("%d\n", sizeof(int));
printf("%d\n", sizeof(long));
printf("%d\n", sizeof(long long));
printf("%d\n", sizeof(float));
printf("%d\n", sizeof(double));
return 0;
}
- 这里我们要提出的是在一个C语言进行的过程中,总是从main函数的第一行进行下去的,这里是十分重要的!
- 这里给读者补充一个内容,就是计算机内存单位的计算
单位 | 单位换算 |
---|---|
1bit | 1 |
1byte | 8 bit |
1KB | 8 byte |
1MB | 1024 KB |
1GB | 1024 MB |
1TB | 1024 GB |
1PB | 1024 TB |
- 注意:bit是计算机内存大小的最小单位
- 一个汉字是两个字节,要用字符串去存储
变量和常量
- 定义变量的方法采用 类型+变量=值 的方法来实现
int main()
{int a = 2; //定义一个变量整形a,给它赋值2
char b = 'w';//定义一个变量字符,给它赋值’w'
}
int main()
{float a = 34.3;//定义一个单精度的浮点变量a,值为34.3
return 0;
}
- 这里要注意虽然给的类型是float,但是在编译器中默认一个小数是double
- 若要为float变量则在值后面加一个f
- 局部变量和全局变量
- 局部变量是指在main函数内部定义的变量
- 全局变量是指在main函数外部定义的变量
- 这里给大家看一下容易出错的例子
int num = 10;//10
int main()
{int num = 20;
printf("%d\n", num);//20
return 0;
}
- 这里的输出结果应该是多少呢?
- 答案是20,因为局部变量优先级在main函数中
- 变量的定义
- 只能由字母(小写大写都可以),数字和下划线(
_
)组成 - 不能以数字开头
- 长度不可以超过63个字符
- 变量名中区分大小写的
- 变量名不可以用关键字
- 变量名最好有意义
int main()
{ int Apple;
int apple;//这两个变量不一样
int apple1_1;
int 1apple;//不可以用数字开头
int char;//不可以使用关键字
int banananum;//变量名最好有意义,这里的变量表示香蕉的数量
}
- 局部变量的作用域:是局部变量所在的局部范围
- 全局变量的作用域:全局变量的作用域是整个工程
- 如果另一个变量在其他的源文件中,是否可以使用?
- 答案是可以的
- 生命周期
- 局部变量的生命周期是:进入作用域生命周期开始,出作用域生命周期结束
- 全局变量的生命周期:整个程序的生命周期
常量
字面常量
const
修饰的常变量#define定义的标识符常量
枚举常量
枚举变量的注意事项
注意常量是不可以去修改的
这里再给大家补充一个C99的概念——变长数组
什么是变长数组呢?
首先我们先看一个错误
如果我们给变量a常量化会怎么样呢?(
const
修饰)我们发现虽然给a常量化,但是还是行不通,这是因为在VS的编译环境下,
const
只是给这个变量一个常属性,不能改变它本身是变量的性质但是如果在Linux系统的gcc编译数组中,这样的形式就可以成立,这样的数组就叫做变长数组,但是这样的数组不可以初始化
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
网站名称:C语言的初阶学习(1)-创新互联
URL链接:http://azwzsj.com/article/dpdosh.html