salve a tutti
devo fare l'esercizio sottostante ma il io l'ho svolto come vedete scritto sotto ma quando lo eseguo mi da come testo di uscita il testo corretto ma alla fine di ogni riga aggiunge il carattere ^p
è tutto il giorno che ci sbatto la testa vi prego aiuto
(compilare da linux aprire con emacs).
grazie in anticipo per le risposte.
testo esercizio:

testo di prova:
Filastrocca delle parole: Fatevi avanti! Chi ne vuole?
Di parole ho la testa piena, con dentro la "luna" e la "balena".
Ci sono parole per gli amici: Buon giorno, Buon anno, Siate felici!
Parole belle e parole buone; parole per ogni sorta di persone.
Di G. Rodari.
devo fare l'esercizio sottostante ma il io l'ho svolto come vedete scritto sotto ma quando lo eseguo mi da come testo di uscita il testo corretto ma alla fine di ogni riga aggiunge il carattere ^p
è tutto il giorno che ci sbatto la testa vi prego aiuto
(compilare da linux aprire con emacs).
grazie in anticipo per le risposte.
testo esercizio:

testo di prova:
Filastrocca delle parole: Fatevi avanti! Chi ne vuole?
Di parole ho la testa piena, con dentro la "luna" e la "balena".
Ci sono parole per gli amici: Buon giorno, Buon anno, Siate felici!
Parole belle e parole buone; parole per ogni sorta di persone.
Di G. Rodari.
Codice:
#include<iostream>
#include<fstream>
#include <stdlib.h>
using namespace std;
const int COD=3;
const int DIM=256;
void cod(char c[]);
int main (int argc,char * argv[])
{
fstream myin,myout;
char c[DIM];
int i;
if (argc!=3)
{
cout<<"ERRORE: usare sintassi $ "<<argv[0]<<" <FILE IN> <FILE OUT>"<<endl;
exit(0);
}
myin.open(argv[1],ios::in);
if (myin.fail())
{
cout<<"ERRORE: file: "<<argv[1]<<" non trovato!"<<endl;
exit(0);
}
myout.open(argv[2],ios::out);
myin.getline(c,DIM);
while (!myin.fail())
{
cod(c);
myout<<c<<endl;
myin.getline(c,DIM);
}
myin.close();
myout.close();
}
void cod(char c[])
{
for (int i=0;c[i]!='\0';i++)
{
c[i]=c[i]+COD;
}
}