|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Aug 2001
Città: San Francisco, CA, USA
Messaggi: 13826
|
[C]Fare il cast di un vettore da "normale" a "const" prima di passarlo a una fun
Ciao ,
sto scrivendo un programma cazzuto per imparare , è un semplice simulatore di computer , ma mi trovo con un problema (altrettanto cazzuto ![]() Allora , io volevo attuare "il principio del minimo privilegio" per scrivere sto programma , ossia quello di consentire il meno possibile in scrittura , per evitare errori logici infidi ![]() Allora , io ho questo vettore qua : int memory[100] = {0}; Che è un vettore normalissimo , ora io lo voglio passare alla funzione dump: void dump(int, int, int, int, int, const int []); e come vedete, dato che la funzione non ha necessità di modificare il vettore ho specificato che la funzione deve riceverlo come "const" , ma GCC mi da questi Warning alla compilazione : Codice:
bash-2.05b$ gcc -O0 -g simpletron.c -o simpletron simpletron.c: In function `main': simpletron.c:75: warning: passing arg 6 of `dump' makes pointer from integer without a cast simpletron.c:86: warning: passing arg 6 of `dump' makes pointer from integer without a cast simpletron.c:98: warning: passing arg 6 of `dump' makes pointer from integer without a cast simpletron.c:109: warning: passing arg 6 of `dump' makes pointer from integer without a cast simpletron.c:131: warning: passing arg 6 of `dump' makes pointer from integer without a cast simpletron.c:136: warning: passing arg 6 of `dump' makes pointer from integer without a cast ![]() Solo che ho provato a passare i dati alla funzione come : dump(accumulator, instructionCounter, instructionRegister, operationCode, operand, (const) memory); Ma probabilmente non funziona , perchè mi da i warning lo stesso ![]() Come faccio a farli scomparire? (a parte settare il vettore della funzione come "non const" ![]() Grazie per l'aiuto al niubbo della programmazione ![]() Ciao
__________________
GPU Compiler Engineer |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Aug 2001
Città: San Francisco, CA, USA
Messaggi: 13826
|
Scusate , mi ha aiutato VICIUS
![]() Ho risolto , dovevo castare con (const int*) ![]() Grazie a tutti ![]() Ciao
__________________
GPU Compiler Engineer |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Nov 2000
Città: MILANO
Messaggi: 2658
|
prego prego figurati
![]() cnque scherzi a parte sei stato gentile a postare la soluzione per tutti; mi hai fatto pensare a una cosa cui non avevo pensato. grazie! ![]() |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 17:37.