ciao a tutti,
ho un codice che richiama un header con questa funzione:
codice:
int modifica()
{
	printf("~~~ Multibip --> Modifica contatto\n");
	printf("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");
	// Chiedo all'utente se sà quale contatto 
modificare o visualizzarli
	printf("1) Visualizza i contatti con gli ID\n2) 
Inserisci l'ID del contatto da modificare\n");
	int scl;
	scanf("%i", scl);
	switch(scl)
	{
	case 1:
		printf("Multibip --> Rivisualizza contatto\n");
		printf("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");
		// Dichiara lo stream e il 
prototipo della funzione fopen 
		FILE *stream, *fopen();
		// Apre lo stream del file 
		stream = fopen("multibip.txt", "r");
		// Controlla se il file viene aperto 
		if ((stream = fopen("multibip.txt", "r")) 
== NULL)
		{
			printf("Non posso aprire il file 
%s\n", "multipad.txt");
			exit(1);
		}
		else
		{	
			// Leggo dal file i dati
			char linea[500]; // stringa 
per l'acquisizione
			int index=0; // inizializza l'indice
			// Apre il file
			FILE *stream = 
fopen("multibip.txt","r");
			// Salvo la lista di contatti
			while(fgets(linea, 500, stream) 
!= NULL)
			{ 
				printf(linea);
			}
		}
		fclose(stream);
		break;
	case 2:
		remodifica();
		break;
	}
}
ma all'istruzione switch si blocca e mi dà questo errore:
The instruction at "0x78025c17" referenced memory at "0x78033d38".
The memory could not be "written".
Click OK to terminate the program
Click CANCEL to debug the program
questo indipendentemente dalla scelta che faccio.

Perchè???

P.S. sono alle prime armi con il C
P.S. se può servire sono su piattaforma win2000