Oppure

Loading
13/06/11 16:04
haberdasherv
void funzione1(int val1, int val2, char [10] val3) {
		if (val2-val1==1) MessageBox::Show("1");
		if (val2-val1==-1) MessageBox::Show("-1");
		MessageBox::Show(val3);
	}

essendo alle prime armi con il c++ sto cercando di capire l'uso e la dichiarazione delle funzioni. ho provato a scrivere il codice indicato sopra ma il compilatore non lo riconosce come valido dandomi questi messaggi:
1>------ Inizio compilazione: Progetto: provac++1, Configurazione: Debug Win32 ------
1>  provac++1.cpp
1>c:\users3\documents\visual studio 2010\projects\provac++1\provac++1\Form1.h(110): error C2146: errore di sintassi: ')' mancante prima dell'identificatore 'val3'
1>c:\users3\documents\visual studio 2010\projects\provac++1\provac++1\Form1.h(110): error C3646: 'val3': identificatore di override sconosciuto
1>c:\users3\documents\visual studio 2010\projects\provac++1\provac++1\Form1.h(110): error C2059: errore di sintassi: ')'
1>c:\users3\documents\visual studio 2010\projects\provac++1\provac++1\Form1.h(114): error C2065: 'val3': identificatore non dichiarato
========== Compilazione: 0 completate, 1 non riuscite, 0 aggiornate, 0 ignorate ==========


sapreste dirmi come mai?
aaa
13/06/11 16:32
inconcepibile
Per passare un vettore ad una funzione o procedura va fatto così:
void funzione(tipo vettore[])
Cioè vanno messe la parentesi quadre dopo il nome e senza la dimensione.

Quindi nel tuo caso diventa:
void funzione1(int val1, int val2, char val3[]) {
       if (val2-val1==1) MessageBox::Show("1");
       if (val2-val1==-1) MessageBox::Show("-1");
       MessageBox::Show(val3);
       }
aaa
13/06/11 16:34
Pitagora
Penso che il codice corretto sia questo:

void funzione1(int val1, int val2, char val3[]) {
        if (val2-val1==1) MessageBox::Show("1");
        else if (val2-val1==-1) MessageBox::Show("-1");
        else MessageBox::Show(val3);
}


Un lettura qui ---> programmazione.html.it/guide/lezione/1184/passaggio-di-array-a-funzioni/ (Passaggio di array a funzioni) e un ripasso veloce alla struttura if - else if - else, perché penso che tu abbia ancora dei dubbi :k:
aaa
13/06/11 19:53
lorenzo
comunque se vuoi imparare il C++ allora stai sbagliando strada.
Quello è codice C++ Managed (che usa quindi .NET e non il codice nativo) quindi è una cosa profondamente diversa.


Stai attento a cosa studi e cosa vuoi studiare
aaa