1.1 编译预处理命令、文件使用方式、命名空间

“你要不要买一本第一行代码?”
“?”
“买 一 本”
(滑稽保命)
常用的预处理命令包括对头函数的引用#include和宏定义#define。
头函数通常全部放在代码开端。通常我们只写代码用的函数,如果不太确定代码里的函数属于哪个库,可以直接堆几个常用库,毕竟只是扔一个库的引用,占用的时间空间并不多~~,而且适当数量的库可以增加气势~~ 。

一、宏命令#include

是C++中引用头文件的操作,其后只能跟一个头文件名,不能写其它任何东西,否则会疯狂CE(compile error,编译错误)。
<>用于系统自带的头文件,""用于用户自己写的头文件。

二、常用头文件

#include<bits/stdc++.h> 万能头,几乎包含所有库里的函数,但是考试大多数情况下禁用,而且总是使用万能头也难对函数有系统的组织。

#include<cstdio> /*输入输出函数。C表示输入输出流,定义输入输出。
常用函数为scanf,printf,freopen。*/
#include <cmath> /*数学函数,常用函数为abs,log,pow等。*/
#include <cstring> /*字符串处理 
常用函数为strlen,strpy等字符串处理相关的函数及数组初始化函数memset。*/
#include<iostream> /*数据流输入输出。常用函数:cin,cout。*/
#include<algorithm> /*STL通用算法
常用函数为sort等。*/
#include <cctype>/*字符处理
常用函数为isdigit。*/
#include<cfloat>/*浮点数处理*/
#include<ctime>/*定义时间函数*/
#include<map>/*STL映射容器*/
#include<vector>/*STL动态数组*/
#include<stack>/*STL预处理容器*/
#include<cstdlib>/*C语言通用工具,常用函数为system()。
如system("pause")起暂停作用(过去很多IDE跑完程序
不会自动暂停,就需要编程者手写一个暂停函数实现程序跑
完后停留在屏幕上来查看运行结果)。*/

注意:1. #include <>和#include“”的区别: <>:引用的是现成的可以直接调用的头文件; “”:引用的是自己写的头文件,
自己写头文件这种奇妙而高级的操作日后会讲到。
2.C和C++对头文件的引用风格区别举例:

#include<stdio.h>//C旧式风格,以h结尾;C和C++通用
#include<iostream.h>//C++旧式风格,以h结尾,C++使用
#include <cstsio>//转换后的C,加前缀c,无扩展名,C++使用
#include<iostream>//C++新式风格,需要namespace

三、文件使用方式

我们常用于freopen。
"r"打开文字文件只读
"w"创建文字文件只写
"a"增补,如果文件不存在则创建一个
"r+"打开一个文字文件读/写
"w+"创建一个文字文件读/写
"a+"打开或创建一个文件增补
“b” 二进制文件(可以和上面每一项合用)
“t” 文本文件(默认项,可以省略)

四、#define预处理指令

目前我们多用于定义不变的量,这些量在使用过程中在根据需要改动时只需"一改全改",极为方便。

#define MAXN 1005//定义MAXN的值为1005,不需声明它的数据类型,引用时注意数据溢出问题即可。

也可用const代替

const int MAXN=1005;

注意分号的区别
以及 #define和const的区别

#define rep(a,b,c)	for(int i=a,i<=b;i++)

五、名称空间

是C++的特性,用于编写大型程序时组织源代码。

1.using namespace std;

一般习惯于在写完所有头函数之后直接这么来一句。例如:

#include<cstdio>
#include<cmath>
#include<cstring>
#include<iostream>
using namespace std;
int main(){
	int a,b,c;
		cin<<a<<b;
		c=a+b;
		cout<<c;
	return 0;
}

2.

#include<cstdio>
#include<cmath>
#include<cstring>
#include<iostream>
//这里没有代码哦
int main(){
	int a,b,c;
		cin<<a<<b;
		c=a+b;
		std::cout<<c;//①
	//或者将①替换为  
	//using std:cout<<c;
	return 0;
}

OK,本节结束。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

延7488

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值