NetBeans и Codelite не распознают #include C ++

Я недавно решил попробовать немного программирования, поэтому я написал свой «привет мир», и это не сработало. Это мой код

#include <iostream>
using namespace std;
int main()
{
cout << "hello world!";
return0;
}

Я также пытался переустановить g ++ и использовать #include <iostream.h>.

Все эти восклицательные знаки говорят в основном одно и то же: невозможно определить идентификатор (cout и т. Д.). Тот, что вверху, говорит: Не удается найти включаемый файл iostream

1
задан 18.05.2020, 04:00

1 ответ

  1. Вам нужны заголовки разработки.

    sudo apt-get install build-essential

  2. у Вас есть опечатка

    return 0

    (отметьте пространство)

  3. Теперь оно компилирует, но Вы пропустили новую строку после выходной строки...

    cout << "Hello world!" << endl;

    или

    cout << "Hello world!\n";

    иначе Ваш вывод будет испорчен со следующим приглашением оболочки:

Результат Вашей программы без новой строки:

[:~/tmp] 1 % g++ lilla.cc
[:~/tmp] % ./a.out 
hello world!%  

(Отмечают %...)

Для будущего, если у Вас есть некоторые пропавшие без вести заголовочного файла, обычно проблема состоит в том, что у Вас нет соответствия -dev пакет. Чтобы попытаться найти его, хорошо, чтобы установить apt-file и искать его (это - несвязанный пример, потому что iostream.h имеет слишком много хиты):

apt-file search missing_header_file.h

... и затем пробираются через результат и видят, несет ли соответствующий пакет его.

0
ответ дан 18.05.2020, 04:00
  • 1
    могли Вы объяснять то же для новичка снова:)? что Вы имеете в виду с новой строкой после выходной строки. В книге я использую для изучения C++, который это точно так же, как выше (кроме от опечатки:)) и что, какое значение это имеет, когда это - оператор не функция? о, и склонные sudo - становятся существенными для сборки, не работает на меня, просто sudo склонный - получают установку существенные для сборки работы. – Antseva 18.05.2020, 04:01
  • 2
    но Вы просто сказали, что % появится если я don' t делают это. Я знаю, что я - новичок между прочим, я только что начал читать книгу, поэтому имейте некоторое терпение;-) и что такое abou вещь функции/оператора? – bphilipnyc 18.05.2020, 04:01
  • 3
    но почему делает это имеет значение, я имею в виду, когда я хочу, чтобы мой курсор остался в первой строке, почему может я просто пропустить " endl./\n" часть и идет прямо для него? btw я буду upvote, когда я понял его, не earlier:-), – bphilipnyc 18.05.2020, 04:02
  • 4
    @ubuntu.stuff, да, если Вы не хотите новой строки, don' t помещают его. Но обычно Вы хотите его. Если Ваше приглашение оболочки будет запрограммировано, например, для очистки текущей строки, Вы не будете видеть вывода. YMMV. И между прочим, это - мое свободное время; я преподаю для своего задания и обычно плачусь. Я понимаю, что программа теперь компилирует, таким образом, этот ответ корректен. Сделайте то, что Вы хотите с голосами.До свидания. – Antseva 18.05.2020, 04:02
  • 5
    Да, недостающая установка была моей опечаткой. Если Вы хотите возврат каретки (новая строка) после Вашего " Привет мир! " необходимо добавить его..., но это не имеет никакого отношения к Ubuntu, C++ 101. Я могу просто советовать Вам читать хорошую книгу или хороший класс программирования (Вы, вероятно, будете ценить универсальный, прежде, чем перейти на определенный язык). – Antseva 18.05.2020, 04:02

Теги

Похожие вопросы