LINUX.ORG.RU

Сообщения BlacKeeper

 

[C++]Предрассудки компилятора.

Форум — Development

Уважаемые ЛОРовцы! У меня к Вам вопрос. Вот есть главная функция main() {...} , перед которой можно поставить int, в ней самой написать в конце return 0; и она вернет ноль. А можно поставить void, тогда она ничего не вернет. Но на void компилятор почему-то выдает предупреждение, что функция должна возвращать int. Скажите, для чего же нужно, чтобы главная функция выдавала именно int, или это абсолютно всеравно и компилятор просто страдает предрассудками?

 

BlacKeeper
()

[C++][Segment Fault]cout<

Форум — Development

Писал программу, и столкнулся со следующей проблемой. В программе я использовал цикл while, в котором от значения m уменьшается переменная int i с шагом в единицу, и когда она равна минус единице, цикл заканчивается. В цикле мне понадобилось вывести на экран значение i+1. При запуске программы выскакивает Segment Fault.

Что интересно, при cout <<i; программа работает(хоть и некорректно, ибом не необходимо ввывести значение i=1), меняю на cout <<i+1; -выдает сегфаулт. Я так понял, предложение cout <<i+1; изменяет i на единицу? Что в свою очередь приводит к тому что в цикле одновременно я увеличиваю и уменьшаю i на 1, что приводит к бесконечному циклу и, соответственно, к переполнению стека?

Можно ли в С++ вывести на экран значение i+1, не изменив значение i, и при этом не используя костыли, наподобие

cout <<i+1;
i-=1;

или без этого никак?

 

BlacKeeper
()

[C++]ошибка компиляции

Форум — Development
#include <iostream>

using namespace std;

int main()
{
        cout << "HELLO WORLD";

        return 0;
}

Компилировал в консоли, компилятор выдает ошибку:

/tmp/ccEIUq2g.o: In function `main':
main.cpp:(.text+0x14): undefined reference to `std::cout'
main.cpp:(.text+0x19): undefined reference to 
`std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)'
/tmp/ccEIUq2g.o: In function `__static_initialization_and_destruction_0(int, int)':
main.cpp:(.text+0x41): undefined reference to `std::ios_base::Init::Init()'
main.cpp:(.text+0x46): undefined reference to `std::ios_base::Init::~Init()'
/tmp/ccEIUq2g.o:(.eh_frame+0x12): undefined reference to `__gxx_personality_v0'
collect2: ld returned 1 exit status

Что-то мне подсказывает, что у меня что-то не стоит..я новичок, подскажите!

 

BlacKeeper
()

Какая IDE для С++лучше для новичка?

Форум — Development

Недавно впервые поставил Ubuntu, вместе с этим хочу начать изучать С++ (до этого изучал pascal). Посоветуйте, какую среду лучше для этого выбрать!

BlacKeeper
()

RSS подписка на новые темы