Ayuda con código para re ordenar array

Iniciado por ZedGe, 2 Abril 2013, 17:47 PM

0 Miembros y 1 Visitante están viendo este tema.

rir3760

Cita de: leosansan en  6 Abril 2013, 14:43 PMSólo me queda la duda de no introducir el caracter nulo al final de cada cadena.
No hay problema. Cuando se declara un array y se inicializa mediante una lista de valores:
char tok[40][6] = {{0}};
Los valores faltantes se toman como cero.

Cita de: leosansan en  6 Abril 2013, 14:43 PMP.D: Lo que no entiendo es a cuento de que vino el código que habías posteado anteriormente :silbar:
¿El primero? Me parecio un buen ejemplo del uso de un interruptor y punteros a funciones.

Cita de: 85 en  6 Abril 2013, 16:12 PM
rir usando macros para hacer el código más legible?  ;-)
No la veo mal. La alternativa era isdigit pero esta no garantiza el resultado uno o cero, se debe forzar y con ello el condicional (con macro):
if (IS_DIGIT(cad[i]) ^ IS_DIGIT(cad[i + 1])){
Termina así (con isdigit):
if (!!isdigit(cad[i]) ^ !!isdigit(cad[i + 1])){
En mi opinión demasiado forzado, a falta de opciones no queda mas (remedio) que utilizar la macro.

Un saludo
C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language

85

Si eso estaba puesto para inicializar en cero..
Y con respecto a mi segundo código y el primero de rir, usaban memoria dinámica porque no se sabe cuántos bloques (de letras o números) van a resultar. Lo que pasa que asumimos un número así por decir 40 para hacerla más fácil.
Me cerraron el Windows Live Spaces, entonces me creé un WordPress XD
http://etkboyscout.wordpress.com/