1.C语言源文件是以.c结尾的,例如main.c
main.c文件内容
//头文件标识,代表引入某个c语言的标准库
#include <stdio.h>
//main函数是c中的入口函数,在最新版c99规范中,main函数的返回值是int,但可以兼容void
void main() {
//printf函数为打印函数,如果是字符串类型可以直接打印
printf("Hello, World!\n");
int a=1;
long b=2;
//如果是整型需要用%d声明
printf("%d",a+b);//输出:3
printf("\n");
//如果是单字符型需要用%c声明
printf("%c",'a');//输出:a
printf("\n");
//如果是浮点型需要用%f声明
printf("%f",1111111.1);//输出:1111111.100000
}
编译 & 执行 C 程序
接下来让我们看看如何把源代码保存在一个文件中,以及如何编译并运行它。下面是简单的步骤:
- 打开一个文本编辑器,添加上述代码。
- 保存文件为 main.c。
- 打开命令提示符,进入到保存文件所在的目录。
- 键入 gcc main.c,输入回车,编译代码。
- 如果代码中没有错误,命令提示符会跳到下一行,并生成 a.out 可执行文件。
- 现在,键入 a.out 来执行程序。
- 您可以看到屏幕上显示 "Hello World" 。
2.c语言程序运行过程
编写:编写main.c源代码
编译:编译器编译main.c,如果代码无错误,由gcc编译并生成 .obj的目标文件
链接:将目标文件和底层函数库结合,生成.exe可执行文件,可执行文件的名称为项目名称
例如<stdio.h>,<stdilb.h>中的printf函数并不是自己写的,而是C标准函数库中的,所以需要多一次链接来引入标准函数库
执行:执行exe文件,得到运行结果
3.语法规范
方法名和变量名不支持数字开头
方法名和变量名只能是字母+数字+$+_
方法名和变量名不能是关键字
4.局部变量
在函数或块的内部声明的变量称为局部变量。它只能在该函数内部使用。局部变量在函数外部是不可知的。
当局部变量被定义时,系统不会对其初始化,您必须自行对其初始化。定义全局变量时,系统会自动对其初始化
int main ()
{
/* 局部变量声明 */
int a, b;
int c;
/* 实际初始化 */
a = 10;
b = 20;
c = a + b;
return 0;
}
全局变量
全局变量定义在函数外部,通常在程序的顶部。全局变量在整个程序生命周期内都是有效的,在任意的函数内部能访问全局变量。
#include <stdio.h>
/* 全局变量声明 */
int a;
int main ()
{
/* 局部变量声明 */
int a=1;
return a;//返回1,因为变量重名时,优先使用局部变量
}
全局变量与局部变量在内存中的区别:
全局变量保存在内存的全局存储区中,占用静态的存储单元;
局部变量保存在栈中,只有在所在函数被调用时才动态地为变量分配存储单元。