Sto cercando di leggere 4 int in C in una sfida di golf e sono disturbati dalla lunghezza del codice che ho bisogno di risolverlo:
scanf("%d%d%d%d",&w,&x,&y,&z)
che è di 29 caratteri, che è enorme se si considera che la mia dimensione totale del codice è di 101 caratteri. Posso eliminare il primo int dato che non si ha veramente bisogno, in modo da ottenere questo codice:
scanf("%*d%d%d%d",&x,&y,&z)
che è 27 caratteri, ma è ancora lunga.
Quindi la mia domanda è, c'è qualche altro modo (trucchi, le funzioni, K & R roba) per leggere interi che non so di che mi potrebbe aiutare a ridurre questo pezzo di codice?
Molte grazie.
EDIT: alcuni utenti hanno segnalato che la mia domanda è simile a Suggerimenti per giocare a golf in C
Anche se questo argomento contiene un sacco di informazioni utili per abbreviare i codici C, non è rilevante per il mio caso d'uso reale in quanto non fornisce un modo migliore per leggere gli ingressi.
Non so se in realtà esiste un modo migliore di scanf per leggere più numeri interi (ecco perché sto ponendo la domanda in primo luogo), ma se c'è, penso che la mia domanda sia pertinente ed è sufficientemente diversa da quella globale suggerimenti e trucchi.
Se non c'è modo migliore, la mia domanda può essere ancora utile in un prossimo futuro, se qualcuno a trovare una soluzione migliore.
EDIT2: Sto cercando un programma completo (quindi nessuna funzione trick) e tutti Librairies possibili. Ha bisogno di essere C, C ++ non. Attualmente, tutto il mio programma si presenta così:
main(w,x,y,z){scanf("%*d%d%d%d",&x,&y,&z)}
trucchi è benvenuto, purché accorciare il codice (questo è il codice di golf :)) e finché non è C ++