gpt4 book ai didi

c++ - 使用 gcc 编译 .cpp

转载 作者:行者123 更新时间:2023-11-30 03:45:53 24 4
gpt4 key购买 nike

好吧,这是我不小心做的,使用 gcc 而不是 g++ 编译 .cpp

但我实际上想逐行理解控制台输出,如果它有任何意义的话。

struct a{
int pointer;
int rollno;
};

struct a student,*studentref;
studentref = &student;
studentref->rollno = 141;
studentref->pointer = 8;

cout<<studentref->rollno<<") : "<<studentref->pointer<<endl;

使用 gcc structpointers.cpp -o structp 编译此代码会得到以下输出:

sourab@sourab:/home/gbear/coding/learningds$ gcc structpointers.cpp -o structp
/tmp/ccXrq1Cv.o: In function `main':
structpointers.cpp:(.text+0x2e): undefined reference to `std::cout'
structpointers.cpp:(.text+0x33): undefined reference to `std::ostream::operator<<(int)'
structpointers.cpp:(.text+0x38): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::endl<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&)'
structpointers.cpp:(.text+0x40): undefined reference to `std::ostream::operator<<(std::ostream& (*)(std::ostream&))'
/tmp/ccXrq1Cv.o: In function `__static_initialization_and_destruction_0(int, int)':
structpointers.cpp:(.text+0x6e): undefined reference to `std::ios_base::Init::Init()'
structpointers.cpp:(.text+0x7d): undefined reference to `std::ios_base::Init::~Init()'
collect2: error: ld returned 1 exit status

最佳答案

.cpp 文件上调用 g++gcc 之间最显着的区别是 g++ 自动链接在 C++ 标准库中,而 gcc 没有;您看到的所有错误都是缺少对 C++ 标准库提供的内容的引用的链接器错误。

(请注意,这不是唯一的区别;有关详细信息,请参阅 this question)

关于c++ - 使用 gcc 编译 .cpp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34464407/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com