chiziq 14). Fayl yaratilgan va muvaffaqiyatli ochildi bir marta (chiziqlar 16 –
20), o'rniga operatorining cout, yilda chiziq 22 Biz, bir ob'ekt foydalanish fout. Shunday qilib,, o'rniga
ma'lumotlar turlari haqida ekran axborot faylga yozilgan bo'lishi mumkin.
// write_file.cpp: определяет точку входа для консольного приложения.
#include "stdafx.h"
#include #include // работа с файлами
#include // манипуляторы ввода/вывода
using namespace std;
int main(int argc, char* argv[])
{
setlocale(LC_ALL, "rus");
// связываем объект с файлом, при этом файл открываем в режиме записи, предварительно удаляя все данные из него
ofstream fout("data_types.txt", ios_base::out | ios_base::trunc);
if (!fout.is_open()) // если файл небыл открыт
{
cout << "Файл не может быть открыт или создан\n"; // напечатать соответствующее сообщение
return 1; // выполнить выход из программы
}
fout << " data type " << "byte" << " " << " max value " << endl // заголовки столбцов
<< "bool = " << sizeof(bool) << " " << fixed << setprecision(2)
/*вычисляем максимальное значение для типа данных bool*/ << (pow(2,sizeof(bool) * 8.0) - 1) << endl
<< "char = " << sizeof(char) << " " << fixed << setprecision(2)
/*вычисляем максимальное значение для типа данных char*/ << (pow(2,sizeof(char) * 8.0) - 1) << endl
<< "short int = " << sizeof(short int) << " " << fixed << setprecision(2)
/*вычисляем максимальное значение для типа данных short int*/ << (pow(2,sizeof(short int) * 8.0 - 1) - 1) << endl
<< "unsigned short int = " << sizeof(unsigned short int) << " " << fixed << setprecision(2)
/*вычисляем максимальное значение для типа данных unsigned short int*/ << (pow(2,sizeof(unsigned short int) * 8.0) - 1) << endl
<< "int = " << sizeof(int) << " " << fixed << setprecision(2)
/*вычисляем максимальное значение для типа данных int*/ << (pow(2,sizeof(int) * 8.0 - 1) - 1) << endl
<< "unsigned int = " << sizeof(unsigned int) << " " << fixed << setprecision(2)
/*вычисляем максимальное значение для типа данных unsigned int*/ << (pow(2,sizeof(unsigned int) * 8.0) - 1) << endl
<< "long int = " << sizeof(long int) << " " << fixed << setprecision(2)
/*вычисляем максимальное значение для типа данных long int*/ << (pow(2,sizeof(long int) * 8.0 - 1) - 1) << endl
<< "unsigned long int = " << sizeof(unsigned long int) << " " << fixed << setprecision(2)
/*вычисляем максимальное значение для типа данных undigned long int*/ << (pow(2,sizeof(unsigned long int) * 8.0) - 1) << endl
<< "float = " << sizeof(float) << " " << fixed << setprecision(2)
/*вычисляем максимальное значение для типа данных float*/ << (pow(2,sizeof(float) * 8.0 - 1) - 1) << endl
<< "long float = " << sizeof(long float) << " " << fixed << setprecision(2)
/*вычисляем максимальное значение для типа данных long float*/ << (pow(2,sizeof(long float) * 8.0 - 1) - 1) << endl
<< "double = " << sizeof(double) << " " << fixed << setprecision(2)
/*вычисляем максимальное значение для типа данных double*/ << (pow(2,sizeof(double) * 8.0 - 1) - 1) << endl;
fout.close(); // программа больше не использует файл, поэтому его нужно закрыть
cout << "Данные успешно записаны в файл data_types.txt\n";
system("pause");
return 0;
}
Qayd etish kerak, Dasturda o'zgarishlar bo'lsin, va barcha thanks uchun, deb I / O mutlaqo o'xshash
ishlatiladigan standart I / O va fayl. Dasturning oxirida, yilda chiziq 45 Biz aniq faylni yopish, bu albatta emas-
da,, lekin u yaxshi dasturiy amaliyot hisoblanadi. Yana shuni ta'kidlash joizki, Bu fayl uchun I / O tegishli
standart ko'rinishi uchun ishlatiladi, barcha vazifalari va manipülatörler I / O. Shuning uchun, hech qanday
xato bor edi, qachon operator coutU obyektlari tomonidan almashtirildi fout.