第一个C++程序
1、文件扩展名
.cpp .cc .C .cxx
2、编译器
g++ 大多数系统需要额外安装,Ubuntu系统下的安装命令:
sudo apt-get update
sudo apt-get install g++
gcc也可以继续使用,但需要增加参数 -xC++ -lstdc++
补充说明:以下引自
https://stackoverflow.com/questions/172587/what-is-the-difference-between-g-and-gcc
gcc and g++ are compiler-drivers of the GNU Compiler Collection (which was once upon a time just
the GNU C Compiler).
Even though they automatically determine which backends (cc1 cc1plus ...) to call depending on the
file-type, unless overridden with -x language, they have some differences.
The probably most important difference in their defaults is which libraries they link against
automatically.
According to GCC's online documentation link options and how g++ is invoked, g++ is equivalent to
gcc -xc++ -lstdc++ -shared-libgcc (the 1st is a compiler option, the 2nd two are linker options).
This can be checked by running both with the -v option (it displays the backend toolchain commands
being run).
机翻为:gcc和g++是GNU编译器的编译器驱动程序。收藏(很久以前就是GNUC编译器).
即使它们自动确定哪个后端(cc1 cc1plus.)根据文件类型进行调用,除非-x language他们有一些不同之处。
它们的默认值中最重要的区别可能是它们自动链接到哪个库。
根据GCC的在线文件链接选项和如何调用g++, g++等于gcc -xc++ -lstdc++ -shared-libgcc(第一个是编译器选项,
第二个是链接器选项)。可以通过使用-v选项(它显示正在运行的后端工具链命令)。
第二条关于 g++和gcc的区别的回答如下:
GCC:GNU编译集
引用GNU编译器支持的所有不同语言。
GCC:GNU C编译器
G++:GNU C++编译器
主要区别是:
GCC将编译:*C/*cpp文件,分别作为C和C++。
G++将编译:*.c/*.cpp文件,但它们都将被视为C++文件。
另外,如果使用g++链接对象文件,它将自动链接到STD C++库中(GCC不会这样做)。
GCC编译C文件的预定义宏较少。
GCC编译*.cpp和g++编译*.c/*.cpp文件有一些额外的宏。
编译*.cpp文件时的额外宏:
#define __GXX_WEAK__ 1
#define __cplusplus 1
#define __DEPRECATED 1
#define __GNUG__ 4
#define __EXCEPTIONS 1
#define __private_extern__ extern
可以参考:https://www.zhihu.com/answer/536826078
3、头文件
#include <iostream>
#include <stdio.h> 可以继续使用,但C++建议使用 #include <cstdio>
4、输入/输出
cin >> 输入数据
cout << 输出数据
cin/cout会自动识别类型
scanf/printf可以继续使用
注意:cout和cin是类对象,而scanf/printf是标准库函数。
5、增加了namespace(名字空间/命名空间)
std::cout
using namespace std;
网站声明:如果转载,请联系本站管理员。否则一切后果自行承担。
添加我为好友,拉您入交流群!
请使用微信扫一扫!