sql2000 回复于:2002-10-10 13:02:18 |
新手吧,INCLUDE 都会写错, #include <iostream.h> 如果写错当然不知道COUT,ENDL之类的东西了。 |
samhoo 回复于:2002-10-10 13:22:32 |
# ./b ld.so.1: ./b: fatal: libstdc++.so.5: open failed: No such file or directory Killed 是因为找不到libstdc++动态链接库,把该库加到搜索路径环境变量中$LD_LIBRARY_PATH。 或者是其他路径变量,你man ld会看到说明。 |
zsh365 回复于:2002-10-10 13:23:26 |
大哥,现在c++已经标准化了,可以使用 #include<iostream> #include<string #include<vector> ...... |
sql2000 回复于:2002-10-10 13:43:41 |
[quote][b]下面引用由[u]zsh365[/u]在 [i]2002/10/10 01:23pm[/i] 发表的内容:[/b] 大哥,现在c++已经标准化了,可以使用 #include<iostream> #include<string #include<vector> ... [/quote] 那我就不清楚了,我只是在学数据结构的时候用过。 不过你的第二个的提示确实是不认识cout, endl 之类的呀! 跟没有include <iostream.h> 的情况是一样的呀,不如让斑竹把帖子转到C++论坛去吧。 |
zsh365 回复于:2002-10-10 13:52:10 |
samhoo兄讲的是对的。 [quote][b]下面引用由[u]samhoo[/u]在 [i]2002/10/10 01:22pm[/i] 发表的内容:[/b] # ./b ld.so.1: ./b: fatal: libstdc++.so.5: open failed: No such file or directory Killed 是因为找不到libstdc++动态链接库,把该库加到搜索路径环境变量中$LD_LIBRARY_PATH。 ... [/quote] 我将 export LD_LIBRARY_PATH=/usr/lib:/usr/local/lib 就可以运行b了。 在linux上gcc是可以编译上面那个wen.C的,我试过。 还有那个问题我确实想问高手解决。 ![]() |
zsh365 回复于:2002-10-10 14:47:02 |
请版主将这个帖子置顶! |
mmmmn 回复于:2002-10-10 17:05:20 |
我是看不懂。。。。 |
avlee 回复于:2002-10-10 17:08:13 |
std:cout或者using namespace std; |
wsye 回复于:2002-10-10 17:42:47 |
Unix支持编译C++的类吗? 我那时也是这样的错误啊 |
zsh365 回复于:2002-10-10 18:07:52 |
avlee兄是对的。 谢谢各位大哥了。 |
萧筱筱 回复于:2002-10-10 21:22:52 |
看不懂。。。 |
zmcc135 回复于:2002-10-11 01:42:31 |
[quote][b]下面引用由[u]sql2000[/u]在 [i]2002/10/10 01:43pm[/i] 发表的内容:[/b] 那我就不清楚了,我只是在学数据结构的时候用过。 不过你的第二个的提示确实是不认识cout, endl 之类的呀! 跟没有include <iostream.h> 的情况是一样的呀,不如让斑竹把帖子转到C++论坛去吧。 [/quote] 怎么C++现在可以这么写了么? 我原来的印象也是和sql2000一样的啊 |
zsh365 回复于:2002-10-11 13:27:01 |
问题已经由samhoo兄 和 avlee兄解决了。 好像是1999年,c++进行了标准化。之后支持标准化的编译器可以使用 #include<iostream> 等不带.h的头文件。 gcc有了一个库叫libstdc++,安装了这个库以后就可以使用上述的头文件了。 而且使用#include <iostream.h> 编译时会有waring: /////////////////////////// ////wen1.C #include<iostream.h> main() { cout<<"gnu c++"<<endl; } //////////////////// g++ -o wen1 wen1.C In file included from /usr/local/include/c++/3.2/backward/iostream.h:31, from wen1.C:1: /usr/local/include/c++/3.2/backward/backward_warning.h:32:2: warning: #warning . |
ilike911 回复于:2002-10-11 13:32:57 |
确实可以 不加 .h 了 |
ilike911 回复于:2002-10-11 13:35:41 |
c++ 确实可以 不加 .h 了 |
jazy 回复于:2002-10-11 14:38:40 |
自从国际标准组织将STL 纳入C++标准后,一般不用后缀.h了 |
sql2000 回复于:2002-10-11 16:26:54 |
g++ -o wen wen.C wen.C: In function `int main()': wen.C:5: `cout' undeclared (first use this function) wen.C:5: (Each undeclared identifier is reported only once for each function it appears in.) wen.C:5: `endl' undeclared (first use this function) make: *** [wen] Error 1 我后来发帖子,不是讨论后缀的问题。 我是说他编译时的错误和没有INCLUDE一样。 那么简单的一个测试程序肯定不会是程序的问题,我在我的系统上编译过了,没问题。 cout, endl在程序中不能正确解释,就是你INCLUDE有问题,他是在iostream中定义的。 不然就是你的C++编译器有问题了,重装。 |
ilike911 回复于:2002-10-11 17:08:47 |
[quote][b]下面引用由[u]avlee[/u]在 [i]2002/10/10 05:08pm[/i] 发表的内容:[/b] std:cout或者using namespace std; [/quote] |
mycuzhoujun 回复于:2002-12-11 10:10:28 |
iostream.h 和 iostream 这两个头文件及对应的so对数据的处理能力是不同。后者要强于前者。其它同前缀名的文件也相同。 所以现只要是使用GCC的地方都不要使用带.h的STL库了。 |