Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.10.2011, 05:40   #1
masashama
Учусь слушать
Пользователь
 
Регистрация: 30.01.2011
Сообщений: 66
Печаль Считывание из файла.

Вопрос следующий, как считать данные из файла в intовский массив.
Код:
#include <iostream>
#include <iomanip>
#include <fstream>
using namespace std;

int main ()
{
   setlocale(0,"");
   int iArr[] = {0,1,2,3,4,5,6,7,8,9};
   int iArr2[10];
   char chStr[11];
       
   ofstream fil("1.pp");
  
   for (int i=0; i<10; i++)
       fil<<iArr[i];
  
   ifstream infile("1.pp");
		for (int i=0;i<10;i++)
		{
			infile >>iArr2[i];
			
		}
       
     for (int i=0; i<10; i++)
        cout<<iArr2[i];
       
  system("pause");
   return 0;
}
Все работает, но работает хреново!!! iArr2 в этом массиве такая чушь хранится =(. Помогите пожалуйста разобраться. А вот если впихивать в символьный массив все нормально читаеться =).
Люблю программировать =)
masashama вне форума Ответить с цитированием
Старый 25.10.2011, 08:13   #2
An1ka
C++,DirectX/OpenGL
Форумчанин
 
Регистрация: 09.01.2011
Сообщений: 422
По умолчанию

Символы нормально читаются, потому что символ и занимает один символ, а число может много символов занимать, формат открытия/закрытия файла то текстовый !
Пробелы надо ставить между числами и файловые потоки закрывать:
Код:
#include <iostream>
#include <iomanip>
#include <fstream>
using namespace std;

int main ()
{
   setlocale(0,"");
   int iArr[] = {0,1,2,3,4,5,6,7,8,9};
   int iArr2[10];
   char chStr[11];
       
   ofstream fil("1.pp");
   for (int i=0; i<10; i++)
       fil<<iArr[i]<<' ';
   fil.close();

   ifstream infile("1.pp");
   for (int i=0;i<10;i++)
	infile >>iArr2[i];	
   infile.close();
       
     for (int i=0; i<10; i++)
        cout<<iArr2[i]<<' ';
       
   system("pause");
   return 0;
}
An1ka вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
считывание из файла vitalik560 C++ Builder 1 01.07.2011 12:53
считывание из файла kaljan775 Общие вопросы C/C++ 4 07.10.2010 14:59
Считывание из файла Tema_Crazzzy Visual C++ 2 09.09.2010 13:41
считывание с файла G.I.JOE Общие вопросы C/C++ 2 06.06.2010 09:18
Считывание из файла DimkinStd Общие вопросы Delphi 7 24.01.2007 19:18