Historias
Slashboxes
Comentarios
 
Este hilo ha sido archivado. No pueden publicarse nuevos comentarios.
Mostrar opciones Umbral:
Y recuerda: Los comentarios que siguen pertenecen a las personas que los han enviado. No somos responsables de los mismos.
  • por pleyades (544) el Martes, 02 Marzo de 2010, 17:24h (#1206264)
    ( http://barrapunto.com/ | Última bitácora: Viernes, 29 Diciembre de 2017, 18:26h )

    switch(var) {
    case 1:
    acion1;
    case 2:
    acion2;
    case 3:
    accion3;
    break;
    case 4:
    accion3;
    break;
    }

    Que si var=1 ajecute accion1,accion2,accion3 si es más raro, y es lo que hace un programa en C

    creo que si C han llegado al lugar donde está

    El C ha llegado a donde está porque al ser un lenguaje muy próximo a la maquina: Hacer un compilador es trivial y barato. Y porque ocupa muy poca memoria, lo que en los primeros tiempos, que el hardware era muy poco potente, se popularizó... el resto... inercia

    Más lejos ha llegado el COBOL. El 70% del software que se escribe hoy en día es en COBOL.

    [ Padre ]
  • por Mu (11278) el Miércoles, 03 Marzo de 2010, 11:30h (#1206436)
    ( http://press.asqueados.net/ | Última bitácora: Jueves, 17 Abril de 2014, 09:50h )
    Las macros son una optimización que sirve para simular funciones sin meter la penalización de los saltos de memoria y el manejo de la pila, a costa de aumentar el tamaño del programa. A lo mejor es lo que querías decir, pero te ha quedado un poco ambiguo.

    Es una solución por cierto bastante superada por las funciones inline de C++, que tal vez deberían integrarse en C como ha pasado con otras cosas.

    Por otro lado, las macros tienen otros efectos más peligrosos que el que el preprocesador te de un error (que al fin y al cabo puedes solucionar fácilmente:

    #define SUMA(a,b) a + b
    int entero = 3 * SUMA(4,5);
    Que daría 17 en vez de 27 como se esperaba, al sustituirse con:

    int entero = 3 * 4 + 5;
    Se soluciona fácilmente, pero ilustra los problemas de lo artesanales que son las macros.

    En cuanto al tratamiento de booleanos, recuerdo que me pareció muy razonable cuando lo vi, pero quizás es que yo pienso demasiado como una máquina. En cualquier caso no me parece muy problemático que un booleano sea un entero igual o distinto de cero. Imagino que debe chocar mucho viniendo desde otros lenguajes más cercanos al dominio del problema.

    A mí por el contrario que tengo un pensamiento cercano al dominio de la solución me gustaron ese tipo de cosas porque te daba lo mínimo que necesitabas para resolver los problemas.
    --
    Envíos descartados por Mu [barrapunto.com]
    [ Padre ]