scanf("%d,%1s[-+=]", segnoper;
ha funzionato, però vorrei capire ... .
Nel libro che sto seguendo in aggiunta al tuo corso in e-zine ho letto fino ad ora esempi ed argomenti sui simboli di "specifica di conversine", scritti sempre l'uno di seguito all'altro, senza la frammissione di
virgole.
Relativamente ad un esercizio relativo proprio a "scanf", per esempio, é scritto:
.......... bla bla ...............
15 scanf("%d%d, &num1, &num2); /* legge due interi */
.......... bla bla ...............
Osservate che il programma in Figura 2.13 utilizza scanf (riga 15) per prendere in input i due numeri. Ogni specifica di conversione ha un argomento corrispondente in cui dovrà essere immagazzinato un valore. Il primio %d convertirà un valore che sarà immagazzinato nella variabile num1 , mentre il secondo convertirà un valore che sarà immagazzinato nella variabile num2 .
Per me, la tua proposta di modifica é stata un'assoluta sorpresa; poi, magari bisogna vedere se il libro che sto leggendo non faccia riferimento ad un linguaggio C inserito in un S.O. diverso da Linux, per cui possano manifestarsi certe differenze di dettaglio. Una noticina in proposito può essere quella riportata in due righe della prefazione
Il testo segue lo standard ANSI C; tenete presente che molte funzionalità dell'ANSI C non sono implementate nelle versioni pre-ANSI del C. Per avere informazioni più dettagliate sul linguaggio vi conviene consultare il manuale di riferimento del vostro sistema o procurarvi una copia del documento ANSI/ISO 9899.
Intanto, grazie al tuo suggerimento, posso andare avanti, e così spero di fare da calamita ai prossimi volenterosi C-isti che volessero attivarsi a rendere più partecipata anche la presente sezione del Forum.