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

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

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 90, средняя оценка - 4.86
bearwoolfs
 Аватар для bearwoolfs
15 / 15 / 2
Регистрация: 10.01.2011
Сообщений: 275
17.11.2011, 17:10     Запись в файл fstream #1
Вот такой вот код , изобразил я для записи переменной в файл , проблема в том , что компилятор записывает в него не 10 раз L , а lННННННННН в чем причина ?

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
#include <iostream>
#include <string>
#include <fstream>
 
using namespace std;
 
int main()
{
    ofstream myfile;// переменная класса ofstream 
 
 char * buffer;// символьный указатель
 const long int size=10;// константная переменная типа int lohg 
 
 buffer = new char[size];// указателю присваиваеться массив типа char 
 for(int i=0;i<10;i++)
 {
buffer[i]='l'; 
myfile.open("M.txt");
myfile.write(buffer,size);
 
 }
 myfile.close();
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jupiter
Каратель
Эксперт C++
6542 / 3962 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
17.11.2011, 17:15     Запись в файл fstream #2
Цитата Сообщение от bearwoolfs Посмотреть сообщение
C++
1
2
3
4
for(int i=0;i<10;i++)
 {
buffer[i]='l'; 
myfile.open("M.txt");
а файл то нафига 10 раз открывать?
bearwoolfs
 Аватар для bearwoolfs
15 / 15 / 2
Регистрация: 10.01.2011
Сообщений: 275
17.11.2011, 17:18  [ТС]     Запись в файл fstream #3
Отжог Я
Теперь он вот так выдал :
lНННННННННllННННННННlllНННННННllllННННННlllllНННННllllllННННlllllllНННllllllllННlllllllllНllllllllll

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
#include <iostream>
#include <string>
#include <fstream>
 
using namespace std;
 
int main()
{
    ofstream myfile;// переменная класса ofstream 
 
 char * buffer;// символьный указатель
 const long int size=10;// константная переменная типа int lohg 
 
 
 buffer = new char[size];// указателю присваиваеться массив типа char 
myfile.open("M.txt");
 for(int i=0;i<10;i++)
 {
buffer[i]='l'; 
myfile.write(buffer,size);
 
 }
 myfile.close();
    return 0;
}
Jupiter
Каратель
Эксперт C++
6542 / 3962 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
17.11.2011, 17:18     Запись в файл fstream #4
C++
1
2
3
4
5
6
const long int size = 11; 
buffer = new char[size]();
for(int i = 0;i < 10; ++i)
    buffer[i] = 'l'; 
myfile.open("M.txt");
myfile.write(buffer,size);
bearwoolfs
 Аватар для bearwoolfs
15 / 15 / 2
Регистрация: 10.01.2011
Сообщений: 275
17.11.2011, 17:29  [ТС]     Запись в файл fstream #5
Опять не понял

Цитата Сообщение от Jupiter Посмотреть сообщение
C++
1
2
3
4
5
6
const long int size = 11; 
buffer = new char[size]();// А зачем тут скобки ??? к чему они ?
for(int i = 0;i < 10; ++i)
    buffer[i] = 'l'; 
myfile.open("M.txt");
myfile.write(buffer,size);
Jupiter
Каратель
Эксперт C++
6542 / 3962 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
17.11.2011, 17:48     Запись в файл fstream #6
Цитата Сообщение от bearwoolfs Посмотреть сообщение
// А зачем тут скобки ??? к чему они ?
заполнить массив нулями, вы забываете про 0 означающий конец строки что приводит к
Цитата Сообщение от bearwoolfs Посмотреть сообщение
lНННННННННllННННННННlllНННННННllllННННННlllllНННННllllllННННlllllllНННllllllllНН lllllllllНllllllllll
DZeeL
0 / 0 / 0
Регистрация: 07.02.2015
Сообщений: 1
07.02.2015, 13:09     Запись в файл fstream #7
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <string>
#include <fstream>
 
using namespace std;
 
int main()
{
    ofstream myfile;
    char * buffer;
    buffer = new char[5]();
    myfile.open("M.txt");
    for (int i = 0; i < 5;++i)
    {
        buffer[i] = 'l';
        myfile.write(buffer, i);
    }
    myfile.close();
    system("pause");
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.02.2015, 14:43     Запись в файл fstream
Еще ссылки по теме:

Запись в середину файла - fstream C++
C++ Fstream не видит файл
C++ Запись в файл fstream

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

Или воспользуйтесь поиском по форуму:
zss
Модератор
Эксперт С++
 Аватар для zss
5942 / 5547 / 1783
Регистрация: 18.12.2011
Сообщений: 14,159
Завершенные тесты: 1
07.02.2015, 14:43     Запись в файл fstream #8
DZeeL, зачем Вам понадобилось отвечать на сообщение
сделанное в 2011 году, да еще и со всеми старыми ошибками?
Yandex
Объявления
07.02.2015, 14:43     Запись в файл fstream
Ответ Создать тему
Опции темы

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