| 	
	
	
		
		|||||||
  | 
		
| 
 | 
![]()  | 
	
	
| 
		 | 
	Strumenti | 
| 		
			
			 | 
		#1 | 
| 
			
			
			
			 Senior Member 
			
		
			
			
			Iscritto dal: Mar 2004 
				Città: Ancona 
				
				
					Messaggi: 2383
				 
				
				
				
				 | 
	
	
	
	
		
			
			 
				
				[C]Validazione stretta
			 
			
		Sto studiando un'argomento che ancora non mi è molto chiaro, la validazione stretta. 
		
	
		
		
		
		
		
	
	Mettiamo che ho una cosa di questo tipo: Codice: 
	PuntatoreInsieme crea_insieme(void) 
{
	PuntatoreInsieme insieme = NULL;
    	int valore = 0;
	int risposta = 0;
	while(risposta == 0) 
	{
		/* acquisire il valore intero tramite tastiera */ 
		printf("Inserisci un elemento intero da aggiungere all'insieme: ");
		scanf("%d", &valore);
        	
		/* stampare a video il valore */
       		printf("valore: %d \n", valore);
	
        	/* inserire il valore acquisito all'interno dell'insieme */
		inserisci_in_coda(&insieme, valore);
		/* stampare a video l'insieme */
        	stampaInsieme(insieme);
	
		/* incrementare o arrestare gli elementi dell'insieme */
        	printf("Vuoi continuare ad inserire? (S=0/N=1)" );
		scanf("%d", &risposta);
		printf("\n");
	}
	return insieme;	
}
su google non riesco a trovare niente e nemmeno sul kernighan Ritchie. Mi sapete aiutare?  | 
| 
		
 | 
	
	
	
		
		
		
		
		
		
			 
		
		
		
		
		
		
			
			
		
	 | 
| 		
			
			 | 
		#2 | 
| 
			
			
			
			 Senior Member 
			
		
			
				
			
			
			Iscritto dal: Nov 2003 
				Città: Il Poli 
				
				
					Messaggi: 992
				 
				
				
				
				 | 
	
	
	
	
		
		
		
		 
		nella libreria ctype.h sono presenti le funzioni 
		
	
		
		
		
		
			
		
		
		
		
	
	isalpha isdigit isalnum tutte e tre restituiscono 1 o 0 nel caso in cui il carattere (char) che tu stia esaminando sia rispettivamente un carattere, una cifra oppure almeno una delle due. potresti quindi sempre acquisire una stringa, analizzarla carattere per carattere (o tokenizzarla ad esempio) e mettere in coda solo gli elementi interi (per numeri composti da più cifre ricorri alla funzione atoi() o anche strtod()). Non sono stato troppo preciso ma penso di averti dato qualche spunto! buon lavoro  | 
| 
		
 | 
	
	
	
		
		
		
		
		
		
			 
		
		
		
		
		
		
			
			
		
	 | 
| 		
			
			 | 
		#3 | 
| 
			
			
			
			 Senior Member 
			
		
			
			
			Iscritto dal: Oct 2006 
				Città: Roma 
				
				
					Messaggi: 1383
				 
				
				
				
				 | 
	
	
	
	
		
		
		
		 
		se ti puo essere utile, scanf restituisce il numero di parti del format string ricevute con successo, quindi se ad esempio l'input é valido per il format string "%d" la scanf restituisce 1, altrimenti 0.
		 
		
	
		
		
		
		
			
		
		
		
		
	
	 | 
| 
		
 | 
	
	
	
		
		
		
		
		
		
			 
		
		
		
		
		
		
			
			
		
	 | 
		
		  
	   | 
| Strumenti | |
		
  | 
	
		
  | 
Tutti gli orari sono GMT +1. Ora sono le: 14:14.









		
		
		

 
 







