c语言的最后一节课

多文件

(1)文件的包含

  • 标准库的头文件:
    一般用<>括起来;编译器直接去查找标准库,找到相应的文件
    例如:
    #include<stdio.h>
  • 自定义头文件:一般用“”括起来;为了区分哭的头文件,编译器的查找路径
    为当前工作路径
    其中可以对外部函数进行声明,可以包含 宏,和结构体,头文件以及自定义头文件
    全局变量的使用:
    在1.c文件中定义的全局变量,若在其他文件中使用
    (1)在其他文件中使用extern声明该全局变量;
    (2)将1.c文件包含头文件中。
    (2)多文件
    便于项目管理,可以根据个人的需求或项目需求将项目划分为不同的文件,有利于提高开发效率!
    编译时,多文件以前进行编译。
    可以将多个文件存放于不同的目录中,
    源文件------>src目录
    头文件------->include目录
    可实现文件-------->bin文件

(6)注意事项:
双目运算符
assert()函数
用于调试代码错误时使用,错误处代码会退出,

  • 常用的宏
    固有的中预定义宏:
    __DATE__ 进行预处理的日期(“Mmm dd yyyy”形式的字符串文字)
    __FILE__ 代表当前源代码文件的字符串文字
    __LINE__ 代表当亲源代码中的行号的整数常量
    __TIME__ 源文件编辑时间,格式 “hh:mm:ss”
    __func__ 当前所在函数名
    对于__FILE__ ___LINE__ __func__这样的宏调试程序时是很有用的

  • main()函数的参数
    argc,参数的个数;
    argv[],参数数组;

  • 快速排序

#include<stdio.h>
#include<time.h>
#include<stdlib.h>
void sort(int *a,int left,int right)
{

    if(left>=right)
    {
        return;
    }
    int i = left;
    int j = right;
    int key = a[left];
    while(i < j)
    {
        while(i < j && a[j] <= key)
        {
            j--;
        }
        a[i] = a[j];
        while(i < j && a[i] >= key)
        {
            i++;
        }
        a[j] = a[i];
    }
    a[i] = key;
    if(i>left)
    sort(a,left,i-1);
    if(i<right)
    sort(a,i+1,right);
}
int main()
{
    int arr[20]={
        0
    };
    srand(time(0));
    int i = 0;
    for(i =0;i<20;i++)
    {
        arr[i] = rand()%100;
    }
    sort(arr,0,19);
    for(i = 0;i<20;i++)
    {
        printf("%d\n",arr[i]);
    }
    return 0;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容