在大型项目中,仅仅一个源文件是不够的,巨大的代码量需要分别放在几个文件中,当然分开存放的更主要的目的是便于模块化。我们把代码按照不同的功能或作用分隔存放在不同的文件中,那么当其中一个功能有改动时,只需要重新编译相关的文件,而不必编译整个项目的所有源文件。
但是,这样就带来了一个问题:在一个文件中定义的变量或函数,能不能在另一个文件中使用呢?或者两个文件中同名的变量会不会引起冲突呢?
为了回答这个问题,首先要明白C语言的源代码如何一步步生成可执行代码的。...
分类:
编程语言 时间:
2015-04-27 23:47:48
阅读次数:
200
那为什么要把目标文件做成库文件呢?首先,如果有太多目标文件的话,gcc命令会敲的手疼(⊙﹏⊙b汗),而库文件的编译命令就很简洁;其次,假设我们又在judge.c中添加了一个无关的add函数,那么直接链接目标文件,会把这些无关代码也加进可执行文件中,于是如果无关函数很多的话,就是使得可执行文件变得很大,但是如果链接库文件的话,链接器可以从静态库中只取出需要的部分来做。...
分类:
编程语言 时间:
2015-04-27 23:47:12
阅读次数:
209
#include //提供open函数
#include // 该头文件提供系统调用的标志
#include // 该头文件提供系统状态信息和相关函数
#include // 该头文件提供进程I/O操作的相关函数
#inc...
分类:
系统相关 时间:
2015-04-27 21:53:50
阅读次数:
316
fork用于新建一个子进程,简单的例子:
#include //提供open函数
#include // 该头文件提供系统调用的标志
#include // 该头文件提供系统状态信息和相关函数
#include // 该...
分类:
系统相关 时间:
2015-04-27 21:53:25
阅读次数:
268
Cocoa 工具包 针对 os x 系统Cocoa Touch 针对IOS系统Cocoa 工具包包括:1.Foundation 框架2.Application Kit3.Core Animation4.Core Image框架:把头文件,库,图片,声音等内容聚集在一个独立单元中的集合体//Found...
分类:
移动开发 时间:
2015-04-27 21:45:13
阅读次数:
171
全包含在:conio.h中clrscr:控制台程序清屏!光标回到1,1点voidclrscr(void);textbackground:选择一种新的文本背景色voidtextbackground(intnewcolor);textmode:将屏幕设置为文本模式voidtextmode(intnewm...
分类:
编程语言 时间:
2015-04-27 21:33:39
阅读次数:
213
如图所示:#include这是一个头文件,包含的是C程序运行的C语言的库函数,只有包含了相关的头文件,在程序中才能调用。stdio表示输入输出控制。printf();就是来自这个头文件。int main(int argc ,const char *argv[]){...} :int 表示函数的返.....
分类:
编程语言 时间:
2015-04-27 20:06:00
阅读次数:
172
linux文件函数-open
一 打开文件
函数名:open
函数原形:
int open(const char *pathname, int flags)
int open(const char *pathname, int flags, mode_t mode)
函数功能:打开或者创建一个文件或者设备
所属头文件:
#include
#inc...
分类:
系统相关 时间:
2015-04-27 18:28:30
阅读次数:
179
linux文件函数-creat
一 创建文件
函数名:creat
函数原形:
int creat(const char *pathname, mode_t mode)
函数功能:创建文件或者设备,并以只写的方式打开
所属头文件:
#include
#inlcude
#include
返回值:
...
分类:
系统相关 时间:
2015-04-27 18:26:48
阅读次数:
249
linux文件函数-close
一 关闭文件
函数名:close
函数原形:int close(int fd)
函数功能:关闭一个文件
所属头文件:#include
返回值:
成功:返回 0
失败:返回 -1
参数说明:fd是待关闭的文件描述符...
分类:
系统相关 时间:
2015-04-27 18:26:37
阅读次数:
210