tener en cuenta que el largo de la palabra no se calcula, lo que hace el compilador es agregar un “flag” de terminacion nulo en la palabr...

Pregunta de la clase:
Strings
Daniel Alejandro Cumaco Robayo

Daniel Alejandro Cumaco Robayo

Pregunta
student
hace 6 años

tener en cuenta que el largo de la palabra no se calcula, lo que hace el compilador es agregar un “flag” de terminacion nulo en la palabra, asi por ejemplo printf(), sabe hasta donde imprimir la palabra “Mauro”, me explico:

Aqui definimos una variable de tipo “char *” la la cual le damos la direccion a la palabra mauro, la cual esta almacenada en el “stack”, (Sector de memoria de lectura durante el runtime)

char *str = "Mauro";

la cosa es que en realidad lo que hizimos fue hacer esto:

char *str = "Mauro\0";

el carater “\0” es un caracter especial que indica una terminacion nula, en pocas palabras es el caracter de la posicion cero en la tabla ASCII

por lo cual pordemos iterar sobre toda la palabra sin saber implicitamente su largo

// libreria para la funcion "write" #include <unistd.h> void put_char(char c) { // write es una funcion de llamada al sistema para imprimir // al standart output, por ahora pueden pensarlo como // que simplemente esta imprimiendo un caracter write(1, &c, 1); } int main(void) { // definimor la variable char *str = "Mauro"; // en cada iteracion movemos el puntero hasta que el valor // que almacena el mismo sera '\0' for (; *str; str++) { put_char(*str); } // imprimimos la nueva linea // recuerden que "\n" != '\n' put_char('\n'); }

si tienen algun duda no duden en preguntar, y agradecere su laik prros :v

No hay respuestas
Curso de Introducción a C 2019

Curso de Introducción a C 2019

Domina las bases para programar en C, el Lenguaje de Programación de propósito general usado para programar microcontroladores y sistemas operativos. Comprende la estructura de C, el lenguaje base de lenguajes avanzados como C++.

Curso de Introducción a C 2019
Curso de Introducción a C 2019

Curso de Introducción a C 2019

Domina las bases para programar en C, el Lenguaje de Programación de propósito general usado para programar microcontroladores y sistemas operativos. Comprende la estructura de C, el lenguaje base de lenguajes avanzados como C++.