请问:为何GCC 4.73连这个基本的C++程序都无法编译

mcmay 2013-09-17 11:30:31
在DOS下用DJGPP(含GCC4.73)编译以下这个简单程序竟然都会无法编译:
//my first c++ program

#include <iostream>

int main()
{
using namespace std;

cout << "My first c++.";
cout<< endl;
cout << "That's it.";

return 0;


编译及报错情况:
...全文
387 27 打赏 收藏 转发到动态 举报
写回复
用AI写文章
27 条回复
切换为时间正序
请发表友善的回复…
发表回复
baichi4141 2013-09-20
  • 打赏
  • 举报
回复
引用 26 楼 akirya 的回复:
[quote=引用 21 楼 baichi4141 的回复:] 我听说gccc语言编译器,g++是C++语言编译器
gcc会根据扩展名不同调用不同的编译器. 跟g++的区别在于不会自动链接stdc++[/quote] 原来如此,学习了。
  • 打赏
  • 举报
回复
引用 21 楼 baichi4141 的回复:
我听说gccc语言编译器,g++是C++语言编译器
gcc会根据扩展名不同调用不同的编译器. 跟g++的区别在于不会自动链接stdc++
tian_shuai 2013-09-19
  • 打赏
  • 举报
回复
我怀疑你的编译器安装好了没!-_-|||
mcmay 2013-09-18
  • 打赏
  • 举报
回复
引用 7 楼 wangdahu888 的回复:
参数写错了吧 就用参数上加个 -lstdc++
加了这个参数,问题同样依旧......谢谢!
mcmay 2013-09-18
  • 打赏
  • 举报
回复
引用 6 楼 turingo 的回复:
C++的程序用gcc编译?应该是g++才对吧。 [quote=引用 楼主 mcmay 的回复:] 在DOS下用DJGPP(含GCC4.73)编译以下这个简单程序竟然都会无法编译:
//my first c++ program

#include <iostream>

int main()
{
	using namespace std;
	
	cout << "My first c++.";
	cout<< endl;
	cout << "That's it.";
	
	return 0;
编译及报错情况:
[/quote] 我用了g++命令,但提示说无此命令。
mcmay 2013-09-18
  • 打赏
  • 举报
回复
引用 21 楼 baichi4141 的回复:
我听说gccc语言编译器,g++是C++语言编译器
g++在DOS下没有这个命令,DJGPP里也没有g++这个文件,只有gcc和gpp,但这两个都不行。谢谢!
mcmay 2013-09-18
  • 打赏
  • 举报
回复
引用 20 楼 pathletboy 的回复:
引用
A: If you install DJGPP on anything but Windows 9X, just ignore that error message about g++.exe and use gpp.exe or gxx.exe to compile C++ programs. g++.exe is an invalid file name on DOS, but is allowed on Windows 9X. It is included for compatibility with Unix, where the C++ compiler is called g++. All g++.exe does is just to run gxx or gpp. So you don't lose much by not having it.
试试gxx 或者 gpp
谢谢,我也用过gxx和gpp了,但还是涛声依旧......
  • 打赏
  • 举报
回复
参数写错了吧 就用参数上加个 -lstdc++
图灵狗 2013-09-18
  • 打赏
  • 举报
回复
C++的程序用gcc编译?应该是g++才对吧。
引用 楼主 mcmay 的回复:
在DOS下用DJGPP(含GCC4.73)编译以下这个简单程序竟然都会无法编译:
//my first c++ program

#include <iostream>

int main()
{
	using namespace std;
	
	cout << "My first c++.";
	cout<< endl;
	cout << "That's it.";
	
	return 0;
编译及报错情况:
mcmay 2013-09-18
  • 打赏
  • 举报
回复
呵呵,谢谢指点!我用的不是Linux系统,我用的是DOS下的DJGPP。我在cygwin下编译没问题,用Codeblocks也没问题,但由于各种原因我的手机上只能用DOSBOX,所以就用了DJGPP。
baichi4141 2013-09-18
  • 打赏
  • 举报
回复
我听说gccc语言编译器,g++是C++语言编译器
max_min_ 2013-09-18
  • 打赏
  • 举报
回复
引用 3 楼 mcmay 的回复:
谢谢楼上二位,你们所说的头文件是指报错中的那个“c++config.h”吗?下载后放在哪个目录下呢?

sudo apt-get install libc6-dev-i386
//目录下,下一个丢进去吧!

//如果还是不行的话,试试下面的
//我的是ubuntu系统,所以命令是这样,你是别的Linux系统就注意换成对应命令吧
sudo apt-get install libc6-dev-i386
mcmay 2013-09-18
  • 打赏
  • 举报
回复
谢谢楼上二位,你们所说的头文件是指报错中的那个“c++config.h”吗?下载后放在哪个目录下呢?
pathletboy 2013-09-18
  • 打赏
  • 举报
回复
引用
A: If you install DJGPP on anything but Windows 9X, just ignore that error message about g++.exe and use gpp.exe or gxx.exe to compile C++ programs. g++.exe is an invalid file name on DOS, but is allowed on Windows 9X. It is included for compatibility with Unix, where the C++ compiler is called g++. All g++.exe does is just to run gxx or gpp. So you don't lose much by not having it.
试试gxx 或者 gpp
mcmay 2013-09-18
  • 打赏
  • 举报
回复
引用 16 楼 alpha81 的回复:
我不知道是怎么回事,但是刚知道using namespace std还能写在main里面,学习了。
C++有很多后续版本,应该是较新的版本里的。
mcmay 2013-09-18
  • 打赏
  • 举报
回复
谢谢!请问如何在DJGPP里安装g++?
引用 15 楼 luotuo44 的回复:
那就安装g++吧 [quote=引用 8 楼 mcmay 的回复:] [quote=引用 6 楼 turingo 的回复:] C++的程序用gcc编译?应该是g++才对吧。 [quote=引用 楼主 mcmay 的回复:] 在DOS下用DJGPP(含GCC4.73)编译以下这个简单程序竟然都会无法编译:
//my first c++ program

#include <iostream>

int main()
{
	using namespace std;
	
	cout << "My first c++.";
	cout<< endl;
	cout << "That's it.";
	
	return 0;
编译及报错情况:
[/quote] 我用了g++命令,但提示说无此命令。[/quote][/quote]
mcmay 2013-09-18
  • 打赏
  • 举报
回复
引用 11 楼 zhao4zhong1 的回复:
试试将源代码文件名改为my1stcpp.cpp
谢谢提醒!这个俺试过了的,gcc既认*.cc也认*.cpp。
Alpha_Gu 2013-09-18
  • 打赏
  • 举报
回复
我不知道是怎么回事,但是刚知道using namespace std还能写在main里面,学习了。
luotuo44 2013-09-18
  • 打赏
  • 举报
回复
那就安装g++吧
引用 8 楼 mcmay 的回复:
[quote=引用 6 楼 turingo 的回复:] C++的程序用gcc编译?应该是g++才对吧。 [quote=引用 楼主 mcmay 的回复:] 在DOS下用DJGPP(含GCC4.73)编译以下这个简单程序竟然都会无法编译:
//my first c++ program

#include <iostream>

int main()
{
	using namespace std;
	
	cout << "My first c++.";
	cout<< endl;
	cout << "That's it.";
	
	return 0;
编译及报错情况:
[/quote] 我用了g++命令,但提示说无此命令。[/quote]
mcmay 2013-09-18
  • 打赏
  • 举报
回复
呵呵,老兄跟我开玩笑了!
引用 10 楼 turingo 的回复:
那就改为C语言,不要用C++写。 [quote=引用 8 楼 mcmay 的回复:] [quote=引用 6 楼 turingo 的回复:] C++的程序用gcc编译?应该是g++才对吧。 [quote=引用 楼主 mcmay 的回复:] 在DOS下用DJGPP(含GCC4.73)编译以下这个简单程序竟然都会无法编译:
//my first c++ program

#include <iostream>

int main()
{
	using namespace std;
	
	cout << "My first c++.";
	cout<< endl;
	cout << "That's it.";
	
	return 0;
编译及报错情况:
[/quote] 我用了g++命令,但提示说无此命令。[/quote][/quote]
加载更多回复(6)

64,648

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧