Pagini recente » Diferente pentru problema/cerc3 intre reviziile 22 si 17 | Statistici Grosu Alexandru (sandry24) | Profil Cristache_Gabriel_321CA | Diferente pentru utilizator/silver_boy22 intre reviziile 7 si 15 | Diferente pentru parsare-fisier-iesire intre reviziile 3 si 4
Nu exista diferente intre titluri.
Diferente intre continut:
fout << 324 << "sdfjhj 87473hriufhe" << '\n' << 638274623846 << '\n'; // !!! endl nu funcţionează, şi oricum şi în fstream este lent. Folosiţi '\n'.
return 0;
}
==
h2. Cod compatibil cu limbajul C (procedural)
Această variantă este perfect compatibilă cu standardele C, întrucât foloseşte funcţii pentru fiecare tip în parte.
== code(cpp) |
#include <stdio.h>
/** Funcţiile necesare parsării fişierului de intrare **/
FILE *_fout;
int _out_loc; char _out_buff[4096];
void write_init(const char* name) // Apelaţi această funcţie la începutul funcţiei <main>
{
_fout = fopen(name, "w");
_out_loc = 0;
}
void write_ch(char ch) // Apelaţi această funcţie pentru a scrie un caracter (cum ar fi ' ' sau '\n')
{
if (_out_loc == 4096) {
fwrite(_out_buff, 1, 4096, _fout);
_out_loc = 0;
} else {
_out_buff[_out_loc++] = ch;
}
}
void write_u32(unsigned int vu32) // Apelaţi această funcţie pentru a scrie un număr ce se încadrează în categoria <unsigned int>
{
if (vu32 <= 9) {
write_ch(vu32 + '0');
} else {
write_u32(vu32 / 10);
write_ch(vu32 % 10 + '0');
}
}
void write_u64(unsigned long long vu64) // Apelaţi această funcţie pentru a scrie un număr ce se încadrează în categoria <unsigned long long>
{
if (vu64 <= 9) {
write_ch(vu64 + '0');
} else {
write_u64(vu64 / 10);
write_ch(vu64 % 10 + '0');
}
}
void write_appendix() // ###! ATENŢIE, Apelaţi această funcţie la finalul prgramului. Altfel, fisierul outpt NU VA CONŢINE ÎN ÎNTREGIME ceea ce doriţi!
{
fwrite(_out_buff, 1, _out_loc, _fout);
fclose(_fout);
}
==
Nu exista diferente intre securitate.
Topicul de forum nu a fost schimbat.