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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Dread1
7 / 7 / 2
Регистрация: 16.10.2012
Сообщений: 61
#1

Найти количество вещественных чисел в файле и вывести их в другой файл - C++

20.02.2013, 00:28. Просмотров 408. Ответов 5
Метки нет (Все метки)

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

Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#include <iostream>
#include <string>
#include <fstream>
using namespace std;
 
ifstream file_input("D:\\test\\in.txt");
//ofstream file_output("D:\\test\\out.txt");
 
int readFile(string *line, string lin, double *flo)
{
char *str = new char[200], *ptrCh;
int i=0;
 if (file_input.is_open())
 {
  cout << "Чтение данных из файла: " << endl;
  while(!file_input.eof())
  {
   getline(file_input, *line);
 cout << *line << endl << endl;;
   strcpy(str, line.c_str());
  ptrCh=strtok(str, " ;,:");
   cout << "asd"<< ptrCh;
   while(ptrCh)
   {
   flo[i++]=atof(ptrCh);
   ptrCh = strtok (NULL, " ,:;-");
   } 
  }
  file_input.close();
  return 0;
 }
 
 else{
  cout << "Не удалось открыть файл 'input.in'" << endl;
  return 1;
 }
}
int main(){
 setlocale(LC_ALL, "Russian");
 string line, *ptrLine = &line;
 int min;
 double *flo=new double[3000];
 readFile(ptrLine, line, flo);
 delete[] flo;
 system("PAUSE");
 return 0;
}


Столкнулся с такой проблемой, что мне нужно после того как считывается первая линия в string копировать её в char *str. Но не получается чего то. Вроде бы из того что написано, должно работать. Может быть кто подскажет, каким образом я могу заставить
C++
1
strcpy(str, line.c_str());
работь. Вроде бы пробывал и саму строку подать в функцию... Ничего не вышло
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.02.2013, 00:28
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Найти количество вещественных чисел в файле и вывести их в другой файл (C++):

С++ как найти слово в файле и вывести его в другой файл - C++
Написал код, но файл не выводится, в чём ошибка? #include &lt;fstream&gt; #include &lt;iostream&gt; #include &lt;string&gt; #include &lt;iomanip&gt; ...

Открыть файл, имя которого задается с клавиатуры. Посчитать количество байт в этом файле. Первую половину прочитанного файла записать в другой файл. - C++
ребят помогите! плиз!!1. Открыть файл, имя которого задается с клавиатуры. Посчитать и вывести на эк-ран количество байт в этом файле....

Среди 5 вещественных чисел найти количество чисел, принадлежащих отрезку от -5 до 7 - C++
Написать программу которая среди 5 вещественных чисел находит кол-во чисел принадлежащих отрезку от -5 до 7

Определить количество цифр в файле и записать строки с цирфами справа налево в другой файл - C++
Помогите написать программу. Задача.Дан текстовый файл.Определить количество цифр в нем. Записать строки, в которых содержаться цирфы...

Дано имя файла целых чисел. Найти количество элементов, содержащихся в данном файле. Если файла с таким именем не существует, то вывести –1 - C++
Дано имя файла целых чисел. Найти количество элементов, содержащихся в данном файле. Если файла с таким именем не существует, то вывести...

Найти в файле самую длинную строку и переписать её в другой файл - C++
всем привет возник такой вопрос есть файл в который вносятся числа разного количества. по этому есть несколько строк введённых чисел....

5
xtorne21st
интересующийся
304 / 275 / 19
Регистрация: 25.09.2010
Сообщений: 1,056
20.02.2013, 00:39 #2
Как числа разделены между собой?
0
Dread1
7 / 7 / 2
Регистрация: 16.10.2012
Сообщений: 61
20.02.2013, 00:58  [ТС] #3
Вообще, в задании ничего не сказано, но предположил я , что с помощью " :;-". Мне пока что не это главное

C++
1
 cout << "asd"<< ptrCh;
эта строка не нужна совсем, была просто для проверки
0
alsav22
5425 / 4820 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
20.02.2013, 02:50 #4
Компилируется без ошибок?
Цитата Сообщение от Dread1 Посмотреть сообщение
strcpy(str, line.c_str());
line - это указатель на строку. Значит: strcpy(str, line ->c_str());
1
Dread1
7 / 7 / 2
Регистрация: 16.10.2012
Сообщений: 61
20.02.2013, 15:36  [ТС] #5
Цитата Сообщение от alsav22 Посмотреть сообщение
Компилируется без ошибок?

line - это указатель на строку. Значит: strcpy(str, line ->c_str());

а можешь, пожалуйста, рассказать поподробнее, что "->" значит, и когда используется. Ато недавно изучать ++ начал

Добавлено через 25 минут
ещё вопрос: Как можно определить имеет ли число дробную часть? Есть у меня пара идей, но мне кажется можно сделать проще
0
alsav22
5425 / 4820 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
20.02.2013, 15:47 #6
Цитата Сообщение от Dread1 Посмотреть сообщение
что "->" значит, и когда используется
Обращение к полям и методам объекта через указатель на него. То же можно получить через разыменование указателя:
C++
1
(*line).c_str()
1
20.02.2013, 15:47
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.02.2013, 15:47
Привет! Вот еще темы с ответами:

Найти в текстовом файле все отрицательные числа и записать их в другой файл - C++
Всем добрый день!) нужна помощь в решении одной задачки...плиззз:) В текстовом файле FileIn записано несколько строк, содержащие...

Дана последовательность, состоящая из N вещественных чисел. Найти и вывести полученные результаты - C++
1. каких чисел в последовательности больше: положительных, отрицательных или нулевых; 2. произведение отрицательных элементов, стоящих на...

В матрице вещественных чисел найти и вывести номера столбцов, упорядоченных по возрастанию - C++
14.В матрице вещественных чисел найти и вывести номера столбцов, упорядоченных по возрастанию

Найти количество элементов массива вещественных чисел, дробная часть которых равна 0,5 - C++
Найти количество элементов массива вещественных чисел, дробная часть которых равна 0,5


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru