Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
Miwa123
37 / 37 / 22
Регистрация: 16.04.2013
Сообщений: 319
Записей в блоге: 1
#1

fwrite

07.06.2013, 18:27. Просмотров 696. Ответов 2
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
void write_file()//писать в файл
{
    FILE *f;
    f=fopen("t.txt", "w");
    abitur n1;
    memset(n1.FIO,0,sizeof(n1.FIO));
    scanf("%s",&n1.FIO);
    scanf("%f", &n1.ocenki);
    scanf("%f", &n1.sr_bal);
    fwrite(&n1,sizeof(abitur),1,f);
    fclose(f);
}
есть структура abitur
C++
1
2
3
4
5
6
struct abitur
{
char FIO[25];
float ocenki;
float sr_bal;
};
почему в файл записываются вместо 2 значений(дабле) иероглифы???
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.06.2013, 18:27
Ответы с готовыми решениями:

fwrite
Функция вписывает в файл указанное конечное число байт. Если я указываю скажем...

Fwrite
Подскажите пожалуйста хоть примерный набросок для лабы: 1...

fwrite, fprintf
Подскажите, что указывается в скобках у этих функций? 1 параметр файл, а что...

Проблема с fwrite
Подскажите пожалуйста. Столкнулся с такой проблемой, при попытки вывести в файл...

Функции fread() и fwrite()
Меня интересует что это за "счётчик" в этих функциях fwrite( massiv, *size_int...

2
Dr_Quake
Заблокирован
07.06.2013, 18:40 #2
Потому, что это и есть два значения Double или Float в обычном(в typedef объявлено таки Float, не все компиляторы делают #define float double), а не строковом виде, хочешь чтобы писало в человеческом - уже не покатит вид fwrite(&n1,sizeof(abitur),1,f); Надо sprintf'ить и записывать руками по одному значению.
0
alsav22
5442 / 4837 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
07.06.2013, 18:43 #3
Цитата Сообщение от Miwa123 Посмотреть сообщение
почему в файл записываются вместо 2 значений(дабле) иероглифы???
Это для блокнота - иероглифы. Он предполагает, что в файле коды символов (char), а не числа int или double.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.06.2013, 18:43

Мелкая непонятка с fwrite()
Подскажите, пожалуйста, в чем разница между fwrite() c амперсантом возле...

Зачем fwrite вызывает lock?
size_t __cdecl fwrite ( const void *buffer, size_t size, ...

Запись в файл через fwrite
Хочу записать число типа int в файл. Открываю файл и вижу символы, чисел нет...


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

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

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