C语言基础知识(一)

C语言入门

  • C语言是一门面向过程的计算机编程语言,与C++、C#、Java等面向对象编程语言有所不同。
  • C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、仅产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。C语言描述问题比汇编语言迅速、工作量小、可读性好、易于调试、修改和移植,而代码质量与汇编语言相当。
  • 当前阶段,在编程领域中,C语言的运用非常之多,它兼顾了高级语言和汇编语言的优点,相较于其它编程语言具有较大优势。
  • 计算机系统设计以及应用程序编写是C语言应用的两大领域。
  • 同时,C语言的普适较强,在许多计算机操作系统中都能够得到适用,且效率显著。

C语言具有如下优缺点

优点:

  • 代码量小
  • 执行速度快
  • 功能强大
  • 编程自由

缺点:

  • 写代码实现周期长
  • 可移植性较差
  • 过于自由,经验不足容易出错
  • 对平台库依赖较多

C语言的应用领域

  • C语言的应用极其广泛,从网站后台,到底层操作系统,从多媒体应用到大型网络游戏,均可使用C语言来开发:IC语言可以写网站后台程序
  • C语言可以专门针对某个主题写出功能强大的程序库IC语言可以写出大型游戏的引擎
  • C语言可以写出另一个语言来
  • C语言可以写操作系统和驱动程序,并且只能用C语言编写
  • 任何设备只要配置了微处理器,就都支持C语言。从微波炉到手机,都是由C语言技术来推动的。

C语言第一个程序

#include <stdio.h>
int main() {
	printf("hello world!\n");
	getchar();
	return 0;
}

第一个程序代码解析

(1)include头文件包含

  • #include的意思是头文件包含,#include <stdio.h>代表包含stdio.h这个头文件。 使用C语言库函数需要提前包含库函数对应的头文件,如这里使用了printf()函数,需要包含stdio.h头文件
  • #include<>与#include“”的区别: <>表示系统直接按系统指定的目录检索,“”表示系统先在“”指定的路径(没写路径代表当前路径)查找头文件,如果找不到,再按系统指定的目录检索

(2)main函数

  • 一个完整的C程序,是由一个、且只能由一个main()函数(又称主函数,必须有)和若干个其他函数结合而成(可选)。
  • 在C语言程序中,程序是从main函数开始执行的。

(3){}括号,代码块

  • {}内的代码又称为代码块,一个代码块内部可以有一条或者多条语句。
  • C语言每句可执行代码都是";"分号结尾。
  • 所有的#开头的行,都代表预编译指令,预编译指令行结尾是没有分号的。
  • 所有的可执行语句必须是在代码块里面。

(4)printf函数

  • printf是C语言库函数,功能是向标准输出设备输出一个字符串。
  • printf(“hello world\n”);\n的意思是回车换行。

(5)return语句

  • return代表函数执行完毕,返回return代表函数的终止。
  • 如果main定义的时候前面是int,那么return后面就需要写一个整数。
  • 如果main定义的时候前面是void,那么return后面什么也不需要写。
  • 在main函数中return 0代表程序执行成功,return -1代表程序执行失败。

注释

作用: 在代码中加一些说明和解释,方便自己或其他程序员程序员阅读
代码注释主要为两种格式:

  • 单行注释://描述信息
    通常放在一行代码的上方,或者一条语句的末尾,对该行代码说明
  • 多行注释︰/* 描述信息 */
    通常放在一段代码的上方,对该段代码做整体说明
  • 提示
    编译器在编译代码时,会忽略注释的内容,对于C语言来说,多行注释(块注释)是C语言标准的注释方法,单行注释是从C++语言借鉴过来的。

变量

作用: 给一段指定的内存空间起名,方便操作这段内存
语法: 数据类型 变量名=初始值
示例:

#include<stdio.h>
int main() {
    int num = 10;//变量,初始值为10
    printf( "num = %d \n" , num);
    getchar();
    return 0;
}

常量

作用: 用于记录程序中不可更改的数据
定义常量两种方式

  • #define宏常量:#define常量名常量值。通常在文件上方定义,表示一个常量
  • const修饰的变量const 数据类型常量名=常量值。通常在变量定义前加关键字const,修饰该变量为常量,不可修改
#include<stdio.h>

#define M 100 

int main() {
    const int num = 10;//常量,常量值为10,常量不可修改
    printf( "M = %d \n" , M);
    printf( "num = %d \n" , num);
    //num = 20;使用这个语句进行修改时,会提示:表达式必须是可修改的左值
    getchar();
    return 0;
}

关键字

作用: 关键字是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 开关语句分支
default 开关语句中默认分支
for 循环语句
do 循环语句循环体
while 循环语句的循环条件
continue 结束当前循环,开启下一轮循环
break 跳出当前循环
goto 无条件跳转语句
sizeof 计算数据类型长度
return 子程序返回语句(可以带参数,也可以不带参数)循环条件

提示 在给变量或者常量起名称时候,不要用以上关键字,否则会导致编译器报错或产生歧义。

标识符命名规则

C语言规定,给标识符(变量、常量)命名时,有一套自己的规则

  • 标识符不能是关键字
  • 标识符只能由字母、数字、下划线组成
  • 第一个字符必须为字母或下划线
  • 标识符中字母区分大小写

建议︰ 给标识符命名时,争取做到见名知意的效果,方便自己和他人的阅读

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值