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

Запись в файл - C++

Восстановить пароль Регистрация
 
Сеня 2007
2 / 2 / 0
Регистрация: 03.10.2010
Сообщений: 182
12.10.2012, 17:50     Запись в файл #1
Вот программа:
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
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <locale.h>
 
 
int i;
 
int fact (int n){ 
     if ( n<1 ) return 1; 
     else return n*fact(n-1); 
     }
void FvMa(char*name,int*a,int n)//запись данных из файла в массив
{
         i=0;
        
        FILE *in;
        if(!(in=fopen(name,"rt")))
        {
                printf("ошибка открытия файла\n");
                return;
        }
        
        if(in!=NULL)
        {
            while(!feof(in))
            {
                fscanf(in,"%d  ",&a[i]);
                i++;
                
                
            }
            n=i;
        }
        
 
 
 
        
        fclose(in);
}
void main()
{
    setlocale (LC_ALL, "Russian");
 
FILE* out;
int i,n;
int *a = new int[100];
char ima[100];
printf("Введите имя файла: \n");
scanf("%s",ima);
printf("Введите количество переменных: \n");
scanf("%i",&n);
FvMa(ima,a,n);//запись из файла в массив
 
out=fopen("out.txt","w");
for(int i=1; i<n; i++)
        {
        fprintf(out,"%d ", &a[i]);
        }
    fclose(out);
}
Вот исходный файл:
3 4 2 -9 4
4 54 3 6 -7
-1 236 44 5 2
А вот то что записывает программа в файл:
8656076 8656080 8656084 8656088 8656092 8656096 8656100 8656104 8656108 8656112 8656116 8656120 8656124 8656128
В чем проблема не пойму!! Помогите!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.10.2012, 17:50     Запись в файл
Посмотрите здесь:

Запись в файл C++
Запись в файл C++
C++ Запись в файл
C++ Запись в файл
C++ Запись в файл
запись в файл. не создается файл C++
C++ Запись в файл
Запись в файл С++ C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Venzo
 Аватар для Venzo
125 / 123 / 4
Регистрация: 03.07.2011
Сообщений: 354
12.10.2012, 19:17     Запись в файл #2
C++
1
fprintf(out,"%d ", &a[i]);
вот тут ты в файл записываешь не значение a[i], а ее адрес.

и еще,
C++
1
for(int i=1; i<n; i++)
индексы массива начинаются с 0, а не с 1. Поэтому в файл не запишется 1й элемент.
Yandex
Объявления
12.10.2012, 19:17     Запись в файл
Ответ Создать тему
Опции темы

Текущее время: 23:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru