Статьи Галерея Форум Чат Файлы HowTo Ссылки Поиск
Текущее время: 19 сен 2019, 17:10




Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: Первые шаги...
СообщениеДобавлено: 27 окт 2002, 10:46 
Пытаюсь скомпилить прогу следущего содержания:

#include <iostream.h>
#include <fstream.h>
int main(void)
{
ofstream out("test");

if(!out)
{
cout << "Can't open file";
return 0;
}

out << 10 << " " << 123.23 << "\n";
out << "This is a short text file.\n";

out.close();

return 0;
}

а gcc в ответ:

/home/kir/tmp/ccdmnz8t.o: In function `main':
/home/kir/tmp/ccdmnz8t.o(.text+0x22): undefined reference to `ofstream::ofstream(int, char const *, int, int)'
/home/kir/tmp/ccdmnz8t.o(.text+0x3b): undefined reference to `ios::operator!(void) const'
/home/kir/tmp/ccdmnz8t.o(.text+0x51): undefined reference to `cout'
/home/kir/tmp/ccdmnz8t.o(.text+0x56): undefined reference to `ostream::operator<<(char const *)'
/home/kir/tmp/ccdmnz8t.o(.text+0x6a): undefined reference to `ofstream::~ofstream(void)'
/home/kir/tmp/ccdmnz8t.o(.text+0xaf): undefined reference to `ostream::operator<<(int)'
/home/kir/tmp/ccdmnz8t.o(.text+0xba): undefined reference to `ostream::operator<<(char const *)'
/home/kir/tmp/ccdmnz8t.o(.text+0xc5): undefined reference to `ostream::operator<<(double)'
/home/kir/tmp/ccdmnz8t.o(.text+0xd0): undefined reference to `ostream::operator<<(char const *)'
/home/kir/tmp/ccdmnz8t.o(.text+0xec): undefined reference to `ostream::operator<<(char const *)'
/home/kir/tmp/ccdmnz8t.o(.text+0xfe): undefined reference to `fstreambase::close(void)'
/home/kir/tmp/ccdmnz8t.o(.text+0x112): undefined reference to `ofstream::~ofstream(void)'
/home/kir/tmp/ccdmnz8t.o(.text+0x12d): undefined reference to `ofstream::~ofstream(void)'
collect2: ld returned 1 exit status

Что бы это могло быть?


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: 27 окт 2002, 11:00 
Попробуй сделать вместе с этим:

#include<iostream> /*ты ипользуешь cout,нужно подключить этот хедер*/
using namespace std;/* ты исп. имена из пространства std которое не подключил*/


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: 27 окт 2002, 11:51 
Потвоему совету поправил:

#include <iostream>
using namespace std;
#include <fstream>

int main(void)
{
ofstream out("test");

if(!out)
{
cout << "Can't open file";
return 0;
}

out << 10 << " " << 123.23 << "\n";
out << "This is a short text file.\n";

out.close();

return 0;
}

Эффект тотже.


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: 27 окт 2002, 11:55 
Ещё раз в предыдущем почему-то не прошёл <iostream>
#include <iostream>
using namespace std;
#include <fstream>

int main(void)
{
ofstream out("test");

if(!out)
{
cout << "Can't open file";
return 0;
}

out << 10 << " " << 123.23 << "\n";
out << "This is a short text file.\n";

out.close();

return 0;
}


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: 27 окт 2002, 15:48 
using namespace std; должно идти после директив препроцессору( т. е. , в принципе, все директивы препроцессору должны быть в начале файла), иначе - я не уверен, что компилятор поймет следующую дирктиву (у тебя это -- #include <fstream>)


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: 27 окт 2002, 18:21 
собирай g++
по умолчанию gcc не линкует с плюсовыми библиотеками
(либо пропиши их руками)


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: 27 окт 2002, 22:09 
СПАСИБО!!! :D :D :D Всё работает.


Вернуться к началу
  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 7 ] 


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
[ All resources are available under GNU GPL ] [ Support ] [ Hosted by DataHata | MyCloud.by ] [ Powered by phpBB® Forum Software © phpBB Group ]

LVEE Winter LVEE Rambler's Top100