-
多文件
*#####文件的包含
----标准库头文件 一般用<>括起来编译器直接去查找标准库; #include <stdio.h>
----自定义头文件 一般用" "括起来;为了区分库的头文件,编译器的查找路径为当前工作路径。
-
多文件
便于项目管理,可以根据个人需求或项目需求将项目划分为不同的文件有利于提高开发效率,编译时,需要讲所有的.c文件联合起来编译。
可以将多个文件存放于不同的目录中
源文件----src目录
头文件----include目录
可执行文件----bin目录
-
自定义头文件
xxxx.h:可以包含:函数声明,库的头文件,自定义和其他头文件,结构体/宏定义,不允许定义变量,若该头文件在项目中的多个文件中包含,则会导致重复定义!!!
-
全局变量的使用
在1.c文件中定义的全局变量,若在其他文件中使用
----在其他文件中使用extern声明该
-
assert()函数---->include <assert.h>
-
注意事项规范性
双目运算符:+ - * / += -= *= /= >= <=等双目运算符 前后要加空格。
单目运算符不需要加空格,空格,空行的使用:紧密相连的代码不需要空格,不同的代码模块之间加空行。
注释的使用:应避免二义性。
循环效率问题:建议用单目运算符。
-
选择排序
-
常用的宏
printf("Date:%s\n",DATE);//打印当前日期
printf("Time:%s\n",TIME);//打印当前时间
printf("Line:%s\n",LINE);//打印当前行号
printf("func:%s\n",func);//打印当前函数名
printf("File:%s\n",FILE);//打印当前文件名
-
main(int argc,char *argv[])
{
if(argc<2)
{
printf("usage:%s arg1\n",argv[0]);
return -1;
}
int i=0;
for(i=0;i<argc;i++)
{
printf("\targv[i]=%s\n",i,argv[i]);
}
return 0;
}
-
防止重复定义
#ifndef HEAD_H //若HEAD_H未定义则编译一下内容
#define HEAD_H//