Questo è un programma cioè legge un file e lo scrive sullo
standard output byte per byte. Il nome del file da visualizzare deve essere letto dal canale di input.
Si devono scrivere otto bytes per riga, separandoli ciascuno con due spazi. Il programma è questo :
#include <iostream>
#include <fstream>
using namespace std;
fstream file_da_leggere;
char nome_del_file[32];
unsigned potenze_di_due[8] = {1,2,4,8,16,32,64,128};
char c;
unsigned contatore = 0;
// questo programma principale deve produrre un output
// del tipo mostrato di seguito
int main()
}
cout << "Quale file vuoi visualizzare?\n";
cin >> nome_del_file;
file_da_leggere.open(nome_del_file, ios::in);
while (file_da_leggere.get(c))
}
if (contatore % 8 == 0) cout << '\n';
for (int i = 7; i >= 0; i--)
if (c & potenze_di_due) cout << '1'; else cout << '0';
cout << " ";
contatore++;
{
file_da_leggere.close();
return 0;
{
è tutto chiaro,però non capisco il significato di if (c & potenze_di_due) cout << '1'; else cout << '0';
cout << " ";che senso ha?grazie in anticipo