程序结构

C++注释:为了让程序更具有可读性,一般会在程序中写入注释,编译器会自动忽略掉注释,不会把它们变成机器码;C++注释常用有二种:
第一种是(两个斜杆)/ /,双斜杠是行注释,也就是在双斜杠只影响所在行,在双斜杠之后的内容为注释。
第二种是/ *   * /,此种方式可以跨多行,只要在/* */中间的部分都是注释。

#include是C++ 的编译预处理命令,它的作用包含对应的文件,#include 的两种不同的写法,#include<***.h>和#include”***.h”.
采用“<>”方式进行包含的头文件表示让编译器在编译器的预设标准路径下去搜索相应的头文件,如果找不到就报错。
采用“”表示先在工程所在路径下搜索,如果失败,再到系统标准路径下搜索。
所以,特别要注意的是,如果是标准库头文件,那么既可以采用<>的方式,又可以采用” “的方式,而用户自定义的头文件只能采用” “的方式。
例如,如下这种方式是正确的:
#include <iostream> 效率较高
#include “iostream” 效率较低

头文件:其实它的内容跟.cpp文件中的内容是一样的,都是C++的源代码。当某一个.cpp源文件需要它们时,它们就可以通过一个宏命令 “#include”包含进这个.cpp文件中,从而把它们的内容合并到.cpp文件中去。当.cpp文件被编译时,这些被包含进去的.h文件的作用便发挥了。

命名空间:主要是为了避免大型软件编写的时候出现重名的问题。

1
2
3
4
5
6
7
8
#include <iostream>      //包含的头文件
using namespace std;     //命名空间

int main()               // 主函数
{
    cout<<"I love programming"<<endl; 	
	return 0;
}

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
#include <iostream>     //包含的头文件

using namespace std;     //命名空间

int main(){
	
    cout<<9/4<<endl;     //整数相除,结果依然为整数。
	
    cout<<9.0/4<<endl;   //实数相除,结果为实数
         
    cout<<9%4<<endl;     // %整数相除取余数。
	
    return 0;
}

应用题:4辆拖拉机5天能耕80公顷土地,问3台拖拉机4天能耕多少公顷土地?

1
2
3
4
5
6
#include <iostream>
using namespace std;
int main(){
	cout<<80/4/5*3*4<<endl;
	return 0;
}

万能头文件

<bits/stdc++.h> 称为万能头文件,它是基本是C++中支持的一个几乎万能的头文件,包含所有的可用到的C++库函数,不是GNU C++库的标准头文件。

优点

  1. 可以节省大量写和搜头文件的时间。
  2. 非常简洁,只需要一行代码就够了。

缺点

  1. 包含的头文件太多,编译起来很费时间。
  2. 该文件只在GCC编译器中有,在clang或MSVC中没有。
  3. 移植性差,只能在GCC下编译。

目前在csp/noip/wc/ctsc/apio/noi 均可以使用

Scroll to Top