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

¿Dónde está /root en el subsistema de Linux de Windows 10?

Siguiendo con el repost que os puse el otro día sobre instalar Ubuntu en Windows 10, hoy os traigo un truco bastante sencillo para ubicarse y navegar con el explorador de Windows: saber donde está root!

Según este rico y nutritivo artículo de askubuntu, se ve que root se encuentra en

C:\Users\Username\AppData\Local\Lxss\rootfs

cambiando “Username” por vuestro usuario obviamente.

Así podéis mover carpetas y archivos como si estuviérais en el Windows clásico y después interactuar con ello dentro de Bash.

Saludos!

Cómo instalar y usar Bash de Ubuntu de manera nativa en Windows 10

Quien siga un poco más al dia lo que hace la empresa de los 4 cuadraditos sabrá que en su momento Canonical (la empresa detrás de Ubuntu, una de las distribuciones más usadas de Linux) y Microsoft llegaron a un acuerdo para traer de manera nativa el terminal de ubuntu dentro de Windows 10.

Seguir leyendo “Cómo instalar y usar Bash de Ubuntu de manera nativa en Windows 10”