第二章

C语言概述

2.1 简单的C程序示例

#include <stdio.h>          //预处理指令
int main(void) {            //主函数总是第一个被调用
    int num;                //声明变量,可以在一条声明中声明两个变量,如 int feet, fathoms
    num = 1;                //给变量赋值
    printf("I am a simple ");       //调用函数
    printf("computer. \n");
    printf("My favorite number is %d because it is first. \n",num);
    return 0;                       //return语句
}
  • output
I am a simple computer.
My favorite number is 1 because it is first.

2.2 示例解释

  • 预处理器指令中的#include<>表示对头文件的引用。头文件内一般包含编译器创建可执行程序时要用的信息,如,各种系统标准函数库信息,预定义常量及其他预编译代码信息。C语言在编译源代码时会提前对这些代码进行相关处理,因此也称为预处理。
  • 函数是C程序中的基本模块。主要用于提高开发效率,实现可重用的代码。
  • main()函数是整个可执行程序的入口。其基本格式和函数的名称是固定的。
  • 声明是C语言最重要的特征之一。声明主要完成两件事
    • 声明变量(标识符)
    • 声明变量类型
  • 变量是C语言中用于表示存储在内存中的特定数据单元,给变量命名时要符合如下规定,“可以使用大小写字母,数字和下划线,名称的第一个字符必须是字母或下划线
  • 赋值,将右边的值赋值给左边声明的变量
  • return,有返回值的C函数要有return语句。(返回0时可以省略,但不建议)

2.3 多个函数

  • 如何将自己定义的函数加入程序中。
#include <stdio.h>
void butler(void);      //函数原型或函数声明						
int main(void) {
    printf("I will summon the butler function.\n");
    butler();           //函数调用
    printf("Yes. Bring me some tea and writeable DVDs. \n");

    return 0;
}
void butler(void) {     //函数定义
    printf("You rang, sir?\n");
}
  • butler()函数在程序中一共出现了3次。分别为
    • 第一次是函数原型(prototype),告知编译器在程序中要使用该函数。
    • 第二次以函数调用(function call)的形式出现在main()中。
    • 第三次出现在函数定义(function definition)中,函数定义即是函数本身的源代码。

2.4 调试程序

  • 程序的错误叫做bug,找出并修正错误的过程叫做调试(debug)。

2.4.1 语法错误

  • C语言的语法错误指的是,把有效的C符号放在错误的位置。
  • 如何发现程序的语法错误
    • 在编译之前,浏览源代码看是否能发现一些明显的错误。
    • 查看编译器是否发现错误。

2.4.2 语义错误

  • 如果遵守C规则,但是运行结果不正确,那就是犯了语义错误。
  • 编译器无法检测语义错误,因为这类错误并未违反C语言的规则。

2.5 关键字和保留标识符

constenumsignedvoid
breakfloatshort_Alignas
caseforsizeof_Alignof
chargotostatic_Atomic
autoifstruct_Bool
continueinlineswitch_Complex
defaultinttypedef_Generic
dolongunion_Imaginary
doubleregisterunsigned_Noreturn
elserestrictwhile_Static_assert
externreturnvolatile_Thread_local
  • 粗体表示C90标准新增关键字。
  • 斜体表示C99标准新增关键字。
  • 粗斜体表示C11标准新增关键字。
  • 保留标识符包括那些以下划线字符开头的标识符和标准库函数名,如printf()
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值