【C语言_1】基础语法知识
精选
原创
©著作权归作者所有:来自51CTO博客作者秃头程序媛的原创作品,请联系作者获取转载授权,否则将追究法律责任
1.第一个C语言程序
#include<stdio.h>
int main()
{
printf("Hello World!");
return 0;
}
2.主函数
//这是主函数:
int main() //main:主要的;重要的;表示一个主函数
{
//return:返回;退回;表示函数的返回值
return 0;//如果程序正常的结束,一般我们将返回值设置为0
}
//双斜杠后面的内容为注释:标注代码的用途和思路,不会被编译
3.什么是函数?
在编程语言中,我们可以将函数看作一个机器,这个机器有三个特征,开始的时候这个机器会被输入一些值。之后机器可以在内部处理或者做一些事情。在全部处理完毕后,机器可以将结果返回。
(1).函数的写法公式
返回值类型 函数名(输入参数值)
{
做点什么事情
return 函数返回值;
}
(2).定义函数
int add(int a,int b)//add函数的定义
{
return a+b;
}
//不能被直接运行
//虽然定义了add函数,但是并没有进行调用
(3).哪里可以调用函数?
主函数!
- 所有C语言都有起始入口,这个入口就是主函数main。
- 进入主函数后,才能由主函数调用其他函数。
- 每个C语言代码,有且只能有一个主函数。
4.输入两个值求和(代码)
#include<stdio.h>//引入头文件
int add(int a,int b)
{
return a+b;
}
int main()
{
int sum;//声明整型变量sum
sum=add(2,3);//给add函数输入了两个值2和3
// =为赋值运算符;功能:将右边的值装进左边的变量
printf("%d",sum);//见9.printf函数
//stdio.h文件中声明了printf函数
return 0;
}
编译器会从上向下阅读代码。当看见add时,编译器就知道定义了一个add函数。接着在main中需要使用到add。由于编译器已经知道了add定义,因此编译器可以正确调用add函数。编译器可以正常编译通过。
如果add函数和main函数调换位置:
//错误示范
#include<stdio.h>
int main()
{
int sum;
sum=add(2,3);
printf("%d",sum);
return 0;
}
int add(int a,int b)
{
return a+b;
}
编译器从上向下阅读代码,当编译器看见add(2,3),编译器会很疑惑,add是什么?编译器无法理解add函数,因此编译器将报错。
5.什么是变量和常量?
int sum;//声明整型变量sum。sum是随意起的名字,当然你也可以用其他的
- 变量必须先声明,才能被使用。
- 变量可以赋值,常量不可以赋值。
- 常量不需要声明,。例如:2,3这类常量,属于int类型。“Hello World!”被引号包括的是字符串。
6.printf函数
// printf是系统自带的函数
//由 print打印;format格式; 组成
printf("Hello World!");//将字符串输出到控制台
printf("%d %d %d",整型int1,整型int2,整型int3);
//%d整型占位符
printf("A=%d B=%d",123,456);
//运行结果:A=123 B=456
7.标识符
- 前面代码中出现的 add a b sum 都是标识符。
- 标识符是由我们自己命名的一个特殊标识。
- 用于表示变量,函数,其他实体的名称。
- 必须进行声明或定义。
- 标识符命名规则:标识符可以用小写字母,大写字母,数字和下划线命名。标识符的第一个字符必须是字母或下划线,不能是数字。并且标识符是区分大小写的。
8.关键词
- C语言标准规定的。
- 有特殊的意义和用途。
- 不能作为标识符使用。
auto :声明自动变量
short :声明短整型变量或函数
int: 声明整型变量或函数
long :声明长整型变量或函数
float:声明浮点型变量或函数
double :声明双精度变量或函数
char :声明字符型变量或函数
struct:声明结构体变量或函数
union:声明共用数据类型
enum :声明枚举类型
typedef:用以给数据类型取别名
const :声明只读变量
unsigned:声明无符号类型变量或函数
signed:声明有符号类型变量或函数
extern:声明变量是在其他文件正声明
register:声明寄存器变量
static :声明静态变量
volatile:说明变量在程序执行中可被隐含地改变
void :声明函数无返回值或无参数,声明无类型指针
if:条件语句
else :条件语句否定分支(与 if 连用)
switch :用于开关语句
case:开关语句分支
for:一种循环语句
do :循环语句的循环体
while :循环语句的循环条件
goto:无条件跳转语句
continue:结束当前循环,开始下一轮循环
break:跳出当前循环
default:开关语句中的“其他”分支
sizeof:计算数据类型长度
return :子程序返回语句(可以带参数,也可不带参数)循环条件