c语言学习之基础知识点介绍(九):预处理指令和多文件开发
一:预处理指令
/*
预处理指令:
作用:在程序编译之前做一些操作。
预处理命令写法的共同特点:都是以#号开头。
文件包含指令:#include 是一个文件包含命令。
作用:把某个文件内的内容读取出来放到相应的位置。
和文件格式无关。它都会读取这个文件内的内容。
注意:
1、 如果不知道文件的路径,可以把文件直接拖进xcode就有路径了。
2、文件中的内容一定要遵守C语言的规范。
3、末尾不要加分号。 #include有<>和" "之分:
<>和" "在绝对路径下,没有任何区别;
相对路径:
<>:只会去系统的头文件目录去找,找不到会报错。
"":先去当前编码文件的目录里面去找,找不到然后再去系统的头文件目录去找,如果还找不到,会报错。
导入系统文件:相当于把系统写好的函数声明拿过来。 在桌面新建一个记事本文件,写上一段代码,例如
for( int i = 1;i<=10;i++){
printf("%d",i);
}
然后在程序里面调用
*/
int main(int argc,const char * argv[]){
#incudle "/文件的路径/文件名.txt" //后面不要跟分号
return ;
} /*
绝对路径:文件的完整路径。例如:#incudle "/文件的路径/文件名.txt" 相对路径:当前编码文件所在的位置。例如:#incudle "文件名.txt" 或者例如:#incudle "文件的路径/文件名.txt"
*/
二、多文件开发
/*
真实项目中,不同的功能是由不同的人共同开发的。
一个文件开发的缺点:
1、不能同时进行工作。
2、 很容易被别人改动自己的代码。
多文件开发的优点:
1、高效。
2、每个人负责自己的部分,不容易被别人修改或者冲突。 多文件开发的一些注意事项:
1、写完函数之后不要忘记写函数的声明,推荐单独新建一个头文件(.h文件)。ps:也可以直接创建C File这个选项(Xcode中),这样可以直接创建一个.c文件和.h文件。.c:源文件,存放函数的实现,.h:头文件:函数的声明。
*/
c语言学习之基础知识点介绍(九):预处理指令和多文件开发的更多相关文章
- c语言学习之基础知识点介绍(十六):文件操作
一.文件的分类 1.文本文件:打开之后能看得懂的文件 2.二进制文件:打开之后看不懂,类似乱码之类的文件(视频,音频打开之后,能看.听,是应为电脑中装有播放器,播放器中含有解码器). 二.操作文件的步 ...
- c语言学习之基础知识点介绍(三):scanf函数
本节继续介绍c语言的基础知识点. scanf函数:用来接收用户输入的数据. 语法:scanf("格式化控制符",地址列表); 取地址要用到取地址符:&(shift+7) 例 ...
- c语言学习之基础知识点介绍(二):格式化控制符和变量的补充
上节简单介绍了c语言中的一些基础知识点,本节将对之前介绍的不够详细的知识点进行补充. 格式化控制符的消息介绍: %d的其他控制符: 1.%md:m代表这个整数位占用多少位,m是一个整数.实际数字不足的 ...
- oc语言学习之基础知识点介绍(二):类和对象的进一步介绍
一.类.对象在内存中的存储 /* 内存分区: 栈:局部变量 堆:程序员自己写代码申请开辟的 程序员自己维护,编译器现在帮我们自动优化了,它在合适的给我们加上了释放空间的语句,所以我们现在写的对象不会造 ...
- c语言学习之基础知识点介绍(二十):预处理指令
一.预处理指令的介绍 预处理命令:在编译之前触发的一系列操作(命令)就叫预处理命令. 特点:以#开头,不要加分号. #include: 文件包含指令 把指定文件的内容复制到相应的位置 #define: ...
- c语言学习之基础知识点介绍(十九):内存操作函数
一.malloc函数 /* 首先需要导入头文件 #include <stdlib.h> malloc void* malloc(n); n是字节大小 开辟堆空间,开辟的字节数以n为准 返回 ...
- c语言学习之基础知识点介绍(七):循环结构
本节主要介绍循环结构 一.while循环 /* 语法: while(表达式){ //循环体; } 注意:循环变量.循环条件和循环控制语句三者缺一不可. 例如: */ ; //循环变量 ){ //循环条 ...
- c语言学习之基础知识点介绍(四):算术运算符和逗号表达式
本节主要介绍c语言中运算符. 运算符主要分为四类: 1.算术运算符 加(+),减(-),乘(*),除(/),取余(%,两数相除,得到余数) 2.关系运算符 3.逻辑运算符 4.换位运算符 下面将依次介 ...
- c语言学习之基础知识点介绍(一):输出语句和变量简单介绍
本系列是为了学习ios做准备的,也能作为c语言入门的教程看看. c语言的程序结构: 1.顺序结构:自上而下依次执行. 2.分支结构:程序有选择的执行某段代码或者不执行某段代码. 3.循环结构:程序循环 ...
随机推荐
- 【转】 Android SDK无法更新解决方法---不错
原文网址:http://blog.csdn.net/shi_weihappy/article/details/41847997 自己的修改: 203.208.39.238 dl.google.com7 ...
- SharePoint 2010 母版页制作的简单介绍
转:http://www.cnblogs.com/jianyus/archive/2012/01/11/2319621.html 1. 首先打开SharePoint Designer 2010,找到 ...
- Android Fragment类方法
public void onStart() 当该Fragment对象对用户可见时,该方法会被调用.该方法通常会跟它的Activity的生命周期的Activity.onStart()方法绑定. publ ...
- [转]NHibernate之旅(2):第一个NHibernate程序
本节内容 开始使用NHibernate 1.获取NHibernate 2.建立数据库表 3.创建C#类库项目 4.设计Domain 4-1.设计持久化类 4-2.编写映射文件 5.数据访问层 5-1. ...
- 开源库CImg 数据格式存储
CImg为开源图像处理库,仅有一个头文件CImg.h便包含了对图像的所有处理函数,函数操作简单,编程方便,但国内使用者较少 其homepage:http://cimg.sourceforge.net/ ...
- Lambda表达式与匿名方法
在C#2中,由于有了方法组,匿名方法,类型的协变和抗变,使得运用delegate变得很容易,在注册事件时代码变得简单易读,但是在C# 2中,代码仍然有点臃肿,大块的匿名方法会降低代码的可读性,一般我们 ...
- hdoj 1047 Integer Inquiry
Integer Inquiry Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)T ...
- SqlCommand对象
SqlCommand对象以及如何使用它与数据库交互 1.什么是command对象2.如何使用ExecuteReader方法查询数据3.如何使用ExecuteNonQuery方法插入和删除对象4.如何使 ...
- Android开发之50个常见实用技巧——添加悦目的动画效果
Hack.5 使用TextSwitcher和ImageSwitcher实现平滑过渡 实现步骤: 1.通过findViewById()方法获取TextSwitcher对象的引用Swithcer,当然也可 ...
- inline-block元素之间出现间隙
一.问题 这里部分的组成是一个input框和一个a按钮,然后a标签为了设置它的width和height我让他display:inline-block(行内元素以块级元素显示内容).神奇的一幕出现了,两 ...