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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.02.2017, 21:07   #1
fokk1
Новичок
Джуниор
 
Регистрация: 17.02.2017
Сообщений: 2
По умолчанию Работа с файлами в с++

Возникла проблемка. Не записывается вся структура в файл.
Задание было такое : создать структуру, затем записать ее в файл и вывести из файла на экран.
Вот сам код.
Код:
#include "stdafx.h"
#include <iostream>
#include <stdlib.h>
#include <fstream>
using namespace std;

struct detali
{
	char  name[64];
	char  kol[64];
	char  price[64];
};

int main()

{
	int const N = 2;
	detali d[N];
	for (int i = 0; i < N; i++)
	{
		cout << "Enter the name of tool: ";
		cin >> d[i].name;
		cout << "Enter the number of tool: ";
		cin >> d[i].kol;
		cout << "Enter price of tool: ";
		cin >> d[i].price;

	}
	ofstream file;
	file.open("nedetali.txt");

	for (int i = 0; i < N; i++)
	{
		file << " Name: " << d[i].name << endl;
		file << " The number: " << d[i].kol << endl;
		file << " Price: " << d[i].price << endl;
		file.close();
	}
	char buff[64];
	ifstream file2;
	file2.open("nedetali.txt");
	while (!file2.eof())
	{
		file2.getline(buff, sizeof(buff));
		cout << buff << "\n";
	}
	system("pause");
	return 0;
}
______________________
Используйте тег [CODE] (кнопка с решеткой # в форме сообщения) при вставке кода на форум.

Последний раз редактировалось Alex11223; 17.02.2017 в 21:52.
fokk1 вне форума Ответить с цитированием
Старый 17.02.2017, 21:50   #2
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

А зачем ты char применяешь?
Ну ладно, пробуй(кинь файл на диск С):
Код:
#include "stdafx.h" 
#include <iostream> 
#include <stdlib.h> 
#include <fstream> 
using namespace std;

struct detali
{
	char name[64];
	int kol;
	int price;
};

int main()
{
	int k;
	const int N = 4;
	detali d[N];
	for (int i = 0; i < N; i++)
	{
		for (k = 0; k < i + 2; k++)
		{
			d[i].name[k] = 65 + 2 * i + k;
			d[i].name[k + 1] = 59 + i + k;
		}
		d[i].name[k + 1] = '\0';
		d[i].kol = 5 * i;
		d[i].price= 7 * i;
	}
		
	ofstream file;
	file.open("C:\\nedetali.txt");
	for (int i = 0; i < N; i++)
	{		
		k = 0;
		file << "Name: ";
		while (d[i].name[k] != '\0')
		{
			file << d[i].name;
			k++;
		}
		file << endl;
		file << "The number: " << d[i].kol << endl;
		file << "Price: " << d[i].price << endl;		
	}
	file.close();


	system("pause");
	return 0;
}
Пиши, что думаешь.

Последний раз редактировалось ura_111; 17.02.2017 в 21:53.
ura_111 вне форума Ответить с цитированием
Старый 18.02.2017, 15:55   #3
fokk1
Новичок
Джуниор
 
Регистрация: 17.02.2017
Сообщений: 2
По умолчанию

Спасибо, разобрался. Вроде работает как надо Вот что получилось:
Код:
#include "stdafx.h" 
#include <iostream> 
#include <stdlib.h> 
#include <fstream> 
using namespace std;

struct detali
{
	char name[64];
	int kol;
	int price;
};

int main()
{
	int k;
	const int N = 2;
	detali d[N];
	for (int i = 0; i < N; i++)
	{
	  cout << "Enter the name of tool: ";
	  cin >> d[i].name;
	  cout << "Enter the number of tool: ";
	  cin >> d[i].kol;
	  cout << "Enter price of tool: ";
	  cin >> d[i].price;

	}
	ofstream file;
	file.open("nedetali.txt");
	for (int i = 0; i < N; i++)
	{
		k = 0;
		file << "Name: ";
		while (d[i].name[k] != '\0')
		{
			file << d[i].name[k];
			k++;
		}
		file << endl;
		file << "Number: " << d[i].kol << endl;
		file << "Price: " << d[i].price << endl;
	}
	file.close();

	char buff[64];
	ifstream file2;
	file2.open("nedetali.txt");
	while (!file2.eof())
	{
		file2.getline(buff, sizeof(buff));
		cout << buff << "\n";
	}
	file2.close();

	system("pause");
	return 0;
}
fokk1 вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Лабораторная работа(очень простая) Структуры, работа с файлами yurda Фриланс 2 11.06.2016 08:44
Работа с файлами: запись, добавление, чтение (найти ошибку в коде) / C для начинающих Надо создать программу для работы с файлами Konlor Общие вопросы C/C++ 2 18.05.2014 12:37
работа с файлами nikcpp Общие вопросы Delphi 2 11.05.2011 15:04
Си++. Работа с файлами. Diamond2107 Помощь студентам 12 06.12.2009 20:38
Работа с файлами в си dampirik Помощь студентам 7 04.07.2009 15:41