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

Проблемки с открытием файла - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Отсортировать алроритм судоку(5 на 5) за определённое время http://www.cyberforum.ru/cpp-beginners/thread819620.html
Понятия не приложу как это осуществить. У меня получается только за неопределённое время при помощи рандомной сортировки: #include <iostream> #include <cstdlib> #include <ctime> #include...
C++ Программа по классам, которая использует классы точек и прямых на плоскости, а, возможно, и другие классы Нужно написать программу, которая использует классы точек и прямых на плоскости, а, возможно, и другие классы. Реализовать её нужно в трех проектах:файл заголовков, главный файл с главной функцией и,... http://www.cyberforum.ru/cpp-beginners/thread819617.html
Конструктор и Деструктор (инициализация массивов) C++
Стал вопрос по инициализации массивов (внутри класса) в конструкторе, но ни методичка, ни гугль явного ответа не дали, возможно массив символов проще преобразовать в строку? Часть кода ко...
C++ как overload ++OBJ и --OBJ
как overload ++OBJ и --OBJ
C++ Сформировать банк данных кинологов http://www.cyberforum.ru/cpp-beginners/thread819581.html
Сформировать банк данных кинологов, включающий в себя информацию: ФИО владельца собаки Кличка собаки Порода собаки Дата рождения собаки Наличие родословной Наличие медалей Составить...
C++ уравнение теплопроводности Всем привет. Собственно есть уравнение теплопроводности, надо его запрограммировать. Вводим граничные и начальные условия. Я все это сделал и программа даже считает, но только в Ubunte. По завершению... подробнее

Показать сообщение отдельно
alsav22
5421 / 4816 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
27.03.2013, 06:12
В 10 строке ошибка (1 пост):
C++
1
2
for(int i=0;i<9;i++)
         mass[i]=a[i];
И выделение памяти под имена файлов нужно сделать:
C++
1
2
3
4
5
6
7
8
9
10
if(count!=0)
    {
        names=new char*[count];
        for(int i=0;i<count;i++)
        {
            names[i] = new char[80];          
            fscanf(in,"%s", names[i]);
        } 
        
    }
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
#include <iostream>
using namespace std;
 
struct data
{
    float mass[9];
    float res;
    void copy(float a[])
    {
        for(int i = 0; i < 9; i++)
            mass[i] = a[i];
    }
};
 
int main()
{
    FILE* in=fopen("in.txt","r");
    int count=0;
    fscanf(in,"%d",&count);
    
    char** names;
    if(count!=0)
    {
        names=new char*[count];
        for(int i=0;i<count;i++)
        {
            names[i] = new char[80];          
            fscanf(in,"%s", names[i]);
            
            printf("%s%c", names[i], '\n');
        } 
        
    }
    else
    {
        cout<<"0 files\n";
        system("PAUSE");
        return 0;
    }
    fclose(in);
    
    data* ThreadData=new data[count];
    for(int i = 0; i < count; i++)
    {
        FILE* DataForThreads=fopen(names[i],"r");
        float mass[9];
        for (int i = 0; i < 9; i++)
        {
            fscanf(DataForThreads, "%f", &mass[i]); 
        }
        ThreadData[i].copy(mass);
        fclose(DataForThreads);
    }
 
    for (int i = 0; i < count; ++i)
        delete [] names[i];
    delete [] names;    
    
    for (int i = 0; i < count; ++i)
    {
        for (int j = 0; j < 9; ++j)
             printf("%4.2f%c", ThreadData[i].mass[j], ' ');
        printf("\n");
    }
 
    delete [] ThreadData;
 
    system("PAUSE");
    return 0;
     
}
0
Миниатюры
Проблемки с открытием файла  
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru