Форум программистов, компьютерный форум CyberForum.ru

Не получилось написать Hello, World - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.67
Manakin
0 / 0 / 0
Регистрация: 03.01.2014
Сообщений: 4
03.01.2014, 21:20     Не получилось написать Hello, World #1
Вот.. Решил мало-помалу возвращаться в C++, написал простенький helloworld, а он... не взлетел
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
#include <string>
 
using namespace std;
 
int main(int argc, char *argv[]){
 if (argc == 0) 
    {cout<<"Error"; return 1;}
 int i = 0;
 while (argv[1][i]) i++;
 for (int k = i - 1; i >= 0; k--) cout << argv[1][k];
 return 0;
}
g++ очень долго ругался:
Код
C:\Users\1\AppData\Local\Temp\ccnaaJHE.o:file.cpp:(.text+0xc): undefined reference to `__gxx_personality_sj0'
C:\Users\1\AppData\Local\Temp\ccnaaJHE.o:file.cpp:(.text+0x9b): undefined reference to `__gxx_personality_sj0'
C:\Users\1\AppData\Local\Temp\ccnaaJHE.o:file.cpp:(.text+0x123): undefined reference to `__gxx_personality_sj0'
C:\Users\1\AppData\Local\Temp\ccnaaJHE.o:file.cpp:(.text+0x1b2): undefined reference to `__gxx_personality_sj0'
C:\Users\1\AppData\Local\Temp\ccnaaJHE.o:file.cpp:(.text+0x241): undefined reference to `__gxx_personality_sj0'
C:\Users\1\AppData\Local\Temp\ccnaaJHE.o:file.cpp:(.text+0x2c9): more undefined references to `__gxx_personality_sj0' follow
C:\Users\1\AppData\Local\Temp\ccnaaJHE.o:file.cpp:(.text+0x401): undefined reference to `std::cout'
C:\Users\1\AppData\Local\Temp\ccnaaJHE.o:file.cpp:(.text+0x406): 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*)'
C:\Users\1\AppData\Local\Temp\ccnaaJHE.o:file.cpp:(.text+0x462): undefined reference to `std::cout'
C:\Users\1\AppData\Local\Temp\ccnaaJHE.o:file.cpp:(.text+0x467): 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)'
C:\Users\1\AppData\Local\Temp\ccnaaJHE.o:file.cpp:(.text+0x490): undefined reference to `std::ios_base::Init::~Init()'
C:\Users\1\AppData\Local\Temp\ccnaaJHE.o:file.cpp:(.text+0x4b1): undefined reference to `std::ios_base::Init::Init()'
d:/strawberry/c/bin/../lib/gcc/i686-w64-mingw32/4.7.3/../../../../i686-w64-mingw32/bin/ld.exe: C:\Users\1\AppData\Local\Temp\ccnaaJHE.o
: bad reloc address 0x0 in section `.ctors'
d:/strawberry/c/bin/../lib/gcc/i686-w64-mingw32/4.7.3/../../../../i686-w64-mingw32/bin/ld.exe: final link failed: Invalid operation
collect2.exe: error: ld returned 1 exit status
ЧЯДНТ?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
03.01.2014, 21:32     Не получилось написать Hello, World #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от Manakin Посмотреть сообщение
g++ очень долго ругался:
Разбирайтесь со своим g++. Код компилируестя без ошибок.
FraidZZ
Модератор
 Аватар для FraidZZ
3880 / 1506 / 227
Регистрация: 06.01.2013
Сообщений: 4,029
Завершенные тесты: 1
03.01.2014, 21:34     Не получилось написать Hello, World #3
Цитата Сообщение от alsav22 Посмотреть сообщение
Код компилируестя без ошибок.
Вот же ж. А я помочь хотел, ошибку у человека искал...

Добавлено через 41 секунду
Блин, надо привыкнуть сначала компилировать, а потом искать ошибки
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
03.01.2014, 22:35     Не получилось написать Hello, World #4
Manakin, в каком файле этот код находится? file.cpp?
games over
0 / 0 / 0
Регистрация: 03.01.2014
Сообщений: 9
03.01.2014, 22:45     Не получилось написать Hello, World #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
using namespace std;
#include <conio.h> 
 
int main()
{
    char name[15];
    cout<<"Enter your name:";
    cin>>name;
 
    cout<<"Hello "<<name<<"! You are welcome to C++ world!"<<endl; 
    _getch();
}
может етот код будет компилируватса
Manakin
0 / 0 / 0
Регистрация: 03.01.2014
Сообщений: 4
03.01.2014, 23:57  [ТС]     Не получилось написать Hello, World #6
alsav22, да, а проблема в этом?
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
04.01.2014, 00:20     Не получилось написать Hello, World #7
Компилируете в командной строке или в среде?
Manakin
0 / 0 / 0
Регистрация: 03.01.2014
Сообщений: 4
04.01.2014, 00:23  [ТС]     Не получилось написать Hello, World #8
Командной строке
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
04.01.2014, 00:32     Не получилось написать Hello, World #9
Что вводите?
Tulosba
04.01.2014, 01:05
  #10

Не по теме:

Цитата Сообщение от games over Посмотреть сообщение
может етот код будет компилируватса
вах, зачем так пишешь, да?

EasyProgramer96
13 / 12 / 0
Регистрация: 13.05.2013
Сообщений: 152
Записей в блоге: 3
04.01.2014, 10:43     Не получилось написать Hello, World #11
Цитата Сообщение от games over Посмотреть сообщение
#include <conio.h>
Вместе этого можно перед return написать


C++
1
system("pause>>void");
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
04.01.2014, 10:54     Не получилось написать Hello, World #12
Цитата Сообщение от EasyProgramer96 Посмотреть сообщение
Вместе этого можно перед return написать
C++
1
system("pause>>void");
Чтобы написать это перед return, нужно сначала написать:
C++
1
#include <cstdlib>
Timur_CF
39 / 39 / 3
Регистрация: 12.12.2013
Сообщений: 227
Записей в блоге: 1
04.01.2014, 12:46     Не получилось написать Hello, World #13
Может, вы выставили какой-нить флаг типа -nostl? Уж больно тупые глюки.
А лучше билд делайте GCC. Вернее.
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
04.01.2014, 13:11     Не получилось написать Hello, World #14
Цитата Сообщение от Manakin Посмотреть сообщение
__gxx_personality_sj0
Про такие ошибки пишут, что бывают при использовании разных версий компиляторов, или разных версий линковщика и компилятора. http://stackoverflow.com/questions/7...ersonality-sj0
EasyProgramer96
13 / 12 / 0
Регистрация: 13.05.2013
Сообщений: 152
Записей в блоге: 3
04.01.2014, 17:10     Не получилось написать Hello, World #15
Цитата Сообщение от Tulosba Посмотреть сообщение
Чтобы написать это перед return, нужно сначала написать:
У меня и без этого запускается !
alsav22
04.01.2014, 17:28
  #16

Не по теме:

Цитата Сообщение от EasyProgramer96 Посмотреть сообщение
У меня и без этого запускается !
Это в студии, но не всем такое счастье.

Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
04.01.2014, 17:31     Не получилось написать Hello, World #17
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от EasyProgramer96 Посмотреть сообщение
У меня и без этого запускается !
Это далеко не значит, что это правильно. У каждой стандартной функции есть ассоциированный с ней заголовочный файл, который и требуется включать директивой #include. А работает, потому что один хедер косвенно включает необходимый. Но эти зависимости не регламентированы. В одном компиляторе может работать, а в другом уже не будет. Поэтому для переносимости следует всегда указывать все необходимые заголовочные файлы.
Manakin
0 / 0 / 0
Регистрация: 03.01.2014
Сообщений: 4
04.01.2014, 17:52  [ТС]     Не получилось написать Hello, World #18
Всем спасибо!
Проблема была в компилляторе, поставил другой и все заработало. Только в самом коде маленькая ошибка была.
С праздником!
kirill1059
 Аватар для kirill1059
14 / 14 / 2
Регистрация: 16.04.2013
Сообщений: 370
04.01.2014, 20:17     Не получилось написать Hello, World #19
А не проще написать так

C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
using namespace std;
 
int main() {
 
    cout << "Hello World \n";
 
    system("pause");
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.01.2014, 20:19     Не получилось написать Hello, World
Еще ссылки по теме:

Не получается написать "Hello world!" C++
C++ Можно ли добавить в последовательность из различных скобок цифры и знаки, чтобы получилось правильное арифметическое выражение?
C++ Написал программу, по задаче, однако не совсем понял как это получилось

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
alsav22
04.01.2014, 20:19     Не получилось написать Hello, World
  #20

Не по теме:

Цитата Сообщение от kirill1059 Посмотреть сообщение
А не проще написать так
mingw не скомпилирует такое.

Yandex
Объявления
04.01.2014, 20:19     Не получилось написать Hello, World
Ответ Создать тему
Опции темы

Текущее время: 03:05. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru