cpp文件编译
❶ 如何用命令行编译cpp文件
单个文件:
g++ file.cpp
这是最简单形式,缺省输出为a.out,可以用-o命令指定输出文件,比如g++ file.cpp f.out
多个文件:
g++ -c 1.cpp -o 1.o
g++ -c 2.cpp -o 2.o
g++ 1.o 2.o -o prog.out
链接成可执行文件:
一般用g++ -o file file.cpp
多个文件是g++ -o file file1.cpp file2.cpp
编译C++不是用GCC而是G++.
如果用GCC能编译但不能链接.
多个文件:
1.编译多个文件,但不连接:
g++ file1.cpp file2.cpp
会生成两个文件:file1.o, file2.o
2.连接:
g++ -o outFileName file1.o file2.o
会生成一个可执行文件:outFileName。
❷ 编译一个CPP文件时,出现这个错误怎么办
因为在工程编译的时候各个.cpp文件依次单独编译,最后才连接到一起,当在编译main.cpp文件时,看到main.cpp文件中有#include“2.cpp”文件时就把2.cpp中的内容和main.cpp一起编译生成main.obj文件。别忘了2.cpp文件也是.cpp文件也要单独编译,编译完2.cpp文件生成2.obj文件后。再将所有编译后的.obj文件连接到一生成.exe文件。这时就会发现2.obj中的内容main.obj中也有(因为main.cpp中#include“2.cpp”)。所以会出现重复定义的错误。
这时你可能又会想到把2.cpp文件改名为2.h在main.cpp文件中#include“2.h”不就行了。因为.h文件不会单独编译。确实是这样。将2.cpp改为2.h后不管工程目录中有没有添加2.h文件都可以。可是前面说了.h文件中最好只放声明。(不失为一个解决问题的办法)
extern可以置于变量或者函数前,以表示变量或者函数的定义在别的文件中,提示变压器遇到此变量和函数时在其他模块中寻找其定义。另外,extern也可用来进行链接指定。
关于extern更详细的解释请看网络
所以我们只需这样:如果在1.cpp中要调用2.cpp中的函数,不要在1.cpp中#include“2.cpp”,只需在1.cpp中声明一下要调用的函数,并且声明前加关键字extern
❸ vs2010如何编译单个CPP文件。
可以明确的告诉你,无此种编译器存在,编译文件不光光是看源文件,各个工程中还有很多的配置文件存在,如果不建立工程,任何编译器都是无法知道你到底是要编译控制台程序,windows程序,或者是DLL。所以还不存在。
❹ 如何用命令行编译cpp文件
单个文件:
g++
file.cpp
这是最简单形式,缺省输出为a.out,可以用-o命令指定输出文件,比如g++
file.cpp
f.out
多个文件:
g++
-c
1.cpp
-o
1.o
g++
-c
2.cpp
-o
2.o
g++
1.o
2.o
-o
prog.out
链接成可执行文件:
一般用g++
-o
file
file.cpp
多个文件是g++
-o
file
file1.cpp
file2.cpp
编译C++不是用GCC而是G++.
如果用GCC能编译但不能链接.
多个文件:
1.编译多个文件,但不连接:
g++
file1.cpp
file2.cpp
会生成两个文件:file1.o,
file2.o
2.连接:
g++
-o
outFileName
file1.o
file2.o
会生成一个可执行文件:outFileName。
❺ 如何使用命令提示符编译一个.cpp文件
单个文件:
g++
file.cpp
这是最简单形式,缺省输出为a.out,可以用-o命令指定输出文件,比如g++
file.cpp
f.out
多个文件:
g++
-c
1.cpp
-o
1.o
g++
-c
2.cpp
-o
2.o
g++
1.o
2.o
-o
prog.out
链接成可执行文件:
一般用g++
-o
file
file.cpp
多个文件是g++
-o
file
file1.cpp
file2.cpp
编译c++不是用gcc而是g++.
如果用gcc能编译但不能链接.
多个文件:
1.编译多个文件,但不连接:
g++
file1.cpp
file2.cpp
会生成两个文件:file1.o,
file2.o
2.连接:
g++
-o
outfilename
file1.o
file2.o
会生成一个可执行文件:outfilename。
❻ c和.cpp的文件怎么一起编译
可以在命令行下编译多个C/CPP文件,通过cl -c命令来编译类文件,编译成obj文件后,你可以使用lib命令将其编译为lib文件,然后使用link命令连接多个obj文件。
默认生成的可执行文件的名称是命令中第一个obj文件的名称,具体参考代码如下:
#include<iostream>
class A{
public:
int a;
int b;
void say();
};
------
/**
class A{
public:
int a;
int b;
void say();
};
*/
#include "A.h"
void A::say(){
a = b;
}
------
//#include<iostream>
#include "A.h"
using namespace std;
int main(){
A a;
a.a = 0;
a.b = 9;
a.say();
cout<<a.a<<" "<<a.b<<endl;
}
❼ c和.cpp的文件怎么一起编译
1、编译test.cpp文件,不要单独编译circle.cpp文件2、将circle.cpp文件内容全部拷贝到test.cpp文件,去除相同的部分。
❽ .CPP文件编译no error,执行时出错
这种情况你试试删除工程文件夹下的debug文件夹下的所有文件,然后重新编译
如果不行,
那就是你
的
源程序
有问题,仔细看看错误列表中函数的定义,变量的定义,还有运行库的加载是否正确等等。
❾ c++文件编译问题
同一个文件夹然后只运行主函数 ,比较好。
不过,如果main中如果有用到那些文件中的函数,记得要#include "。。。"
比如你在fun.h中声明了个fun()函数,main中调用了fun();那么要记得#include "fun.h"
❿ vs2013打开的cpp文件如何编译
Visual Studio无法对单个源代码文件直接编译。
VisualStudio工程(.sln)编译需要许多的参数,比如头文件源文件,依赖库等。如果没有他们,强大的Studio只是废物。
解决思路:
建立一个空VisualStudio工程->导入源代码->编译运行。
Step1 建立空项目
1.1 打开VisualStudio,按快捷键Ctrl + Shift + N,即可弹出新建项目的窗口。
(或,文件(FILE)->新建(NEW)->工程(Project)即可弹出新建项目的窗口。)