Mejor manera de leer múltiples int en C que scanf


17

Estoy tratando de leer 4 ints en C en un desafío de golf y me preocupa la longitud del código que necesito para resolverlo:

scanf("%d%d%d%d",&w,&x,&y,&z)

eso es 29 caracteres, lo cual es enorme teniendo en cuenta que el tamaño total de mi código es de 101 caracteres. Puedo deshacerme del primer int ya que realmente no lo necesito, así que obtengo este código:

scanf("%*d%d%d%d",&x,&y,&z)

que son 27 caracteres, pero aún es largo.

Entonces, mi pregunta es, ¿hay alguna otra forma (trucos, funciones, cosas de K&R) para leer entradas que no conozco y que puedan ayudarme a reducir este bit de código?

Muchas gracias.

EDITAR: algunos usuarios han informado que mi pregunta es similar a Consejos para jugar golf en C

Si bien este tema contiene una gran cantidad de información útil para acortar los códigos C, no es relevante para mi caso de uso real, ya que no proporciona una mejor manera de leer las entradas.

No sé si en realidad hay una mejor manera que scanf para leer múltiples enteros (es por eso que hago la pregunta en primer lugar), pero si la hay, creo que mi pregunta es relevante y es lo suficientemente diferente a la global. consejos y trucos.

Si no hay una mejor manera, mi pregunta aún puede ser útil en el futuro cercano si alguien encuentra una mejor solución.

EDIT2: Estoy buscando un programa completo (por lo que no hay truco de función) y todas las bibliotecas posibles. Tiene que ser C, no C ++. Actualmente, todo mi programa se ve así:

main(w,x,y,z){scanf("%*d%d%d%d",&x,&y,&z)}

cualquier truco es bienvenido, siempre y cuando acorte el código (este es el código golf :)) y siempre que no sea c ++


44
Por lo general, puede enviar una función en lugar de programas completos que le permite tomar esos 4 ints como argumentos.
Denker

Ya veo, gracias por tu comentario, pero en mi caso, debe ser un programa completo.
BusyBeingDelicious

12
1) @BusyBeingDelicious, ¡bienvenido a PPCG! :) 2) Para los votantes cercanos, esta no es una pregunta de programación general . Esta es una pregunta de consejos que pide ayuda para el código de golf que es absolutamente sobre el tema .
Martin Ender

1
Posible duplicado de Consejos para jugar golf en C
Mego

3
Estimados votantes cercanos: Esto es muy claro en el tema. ¿Por qué sigues intentando cerrar esto?
DJMcMayhem

Respuestas:


2

Puede escribir una función en lugar de un programa como su envío. En C puede omitir intde las firmas de funciones:

f(w,x,y,z){}

9
El OP mencionó en un comentario que en este caso debe ser un programa completo.
Alex A.
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.