Programación en C  | Tamaños de arrays y sizeof()

¿Nunca te has preguntado porqué main está definido como “int main(int argc, char** argv)” ? Es decir, si nos dan directamente un array con los valores de los argumentos, ¿no es más sencillo correr un bucle y usar un sizeof como delimitador?

¡Pues resulta que no! Al parecer sizeof solo funciona para encontrar la longitud del array si lo aplicas al array original, pero sin embargo si intentamos hacer el sizeof de un puntero, sizeof devolverá el tamaño del puntero y no del array. Por lo tanto, ¡cuando pedimos la longitud del array como argumento (argc) es necesario y no redundante!

Sin embargo, ya que argv termina convenientemente en un puntero a NULL se puede jugar un poco alrededor de esto, pero de todas maneras no es buena praxis, siendo lo estándar llevar en otra variable o en una estructura una indicación del tamaño de un array decaido a puntero.

Anuncios

Teleco Toolbox | Unidades logarítmicas

¡Hola! Aquí traigo algunas herramientas fundamentales para sobrevivir a una carrera de teleco. Intentaré hacer las explicaciones lo más interesantes y entendibles posible, para alguien con -3 neuronas como un servidor. ¡Que aproveche!

Ok. Unidades logarítmicas. Me voy a explayar un poco en explicarlo, por lo que quiera revisar las fórmulas dejaré lo fundamental como chuletario al final.

Seguir leyendo “Teleco Toolbox | Unidades logarítmicas”