Originariamente inviato da dybart
Sto provando a compilare per la prima volta un programmain c++ con g++ da windows ma come provo ho questo output;
codice:
$ g++ bfc.c -o bfc
In file included from bfc.c:12:
huffman.h:500:3: warning: no newline at end of file
In file included from bfc.c:13:
lz.h:349:3: warning: no newline at end of file
bfc.c: In function `int main(int, char**)':
bfc.c:221: error: invalid conversion from `void*' to `unsigned char*'
bfc.c:275:2: warning: no newline at end of file
Qualcuno sa spiegarmi un pò il significato? è la prima volta che me li trovo davanti...
dimmi se la riga 221 è questa
codice:
out = malloc( outsize ); /* makes outsize room in memory and puts the
il fatto che il file sia con estensione .c ti suggerisce che il file è un sorgente C e non C++
se lo compili così
$ gcc bfc.c -o bfc
vedrai che non avrai alcun errore, questo perché C++ impone delle restrizioni al codice legacy C, che ha ereditato da questo linguaggio, una di queste è proprio quell'errore
In C questo cast non è necessario
codice:
out = (unsigned char*) malloc( outsize ); /* makes outsize room in memory and
in C++ , questo cast è obblicatorio