首页 > 技术文章 > C语言概述

endless-process 2022-02-24 19:22 原文

C语言概述

1. 使用C语言的七个步骤

1. 定义程序目标
2. 设计程序
3. 编写代码
4. 编译
5. 运行程序
6. 调试和测试程序
7. 维护和修改代码

2. 编程机制

​ 编译器把源代码转换成中间代码,链接器把中间代码和其他代码(如库代码和启动代码)合并,生成可执行文件。

​ 源代码test.c经编译得到中间代码test.obj再链接为可执行代码test.exe。

3. C语言概述

简单c程序

//在控制台打印Hello World!
#include<stdio.h> //将stdio.h文件中的所有内容都输入该行所在位置
int main(void){    //C程序从main()函数开始执行
	int num=1;  	//声明 变量名为num,数据类型int,赋值1
	printf("Hello World!");//调用printf()函数打印" "里内容
	return 0; //int mian(void)中的int 表明main()函数应该返回一个整数
}
/*
	变量命名规则:可以用小写字母、大写字母、数字和下划线(_)来命名、而且,名称的第一个字必须是字母或下划线,不能是数字。
    																		*/

提高程序可读性的技巧

  • 选择有意义的函数名
  • 写注释
  • 在函数中用空行分隔概念上的多个部分
  • 每条语句各占一行

4.进一步使用C

  1. 程序说明:程序开始处添加程序说明

  2. 多个函数:为程序中用到的所有函数提供函数原型

  3. 调试程序

    /*  nogood.c -- 有问题的程序 */
    #include <stdio.h>
    int main(void)
    (
     int n, int n2, int n3;
     
    /* 程序有多处错误 */
     n = 5;
     n2 = n * n;
     n3 = n2 * n2;
     printf("n = %d, n squared = %d, n cubed = %d\n", n, n2, n3)
     
     return 0;
     )
     
     /* 语法错误:把有效的C符号放在错误的地方
     	上述程序 mian()函数应用{},变量声明应为 int n1,n2,n3;  mian()中注释漏掉*/ printf()语句句末少了分号;
     	语义错误:指意思上的错误
     	上述程序n3被设置为n的4次方(n2=n*n) ,编译器无法检验语义错误
     	运用调试器(debugger)检测程序状态
     	*/
    
    1. 关键字和保留字

      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 :子程序返回语句(可以带参数,也可不带参数)循环条件

推荐阅读