Page 74

según se desee usar la convención de punto flotante ó cientifica. Es posible tambien , aunque menos frecuente , realizar la operación inversa, es decir, convertir un número en un string. ITOA() , ULTOA() • •

• •

Header : <stdlib.h> Prototipo: char *itoa( int numero , char *s , int base ) char *ultoa( unsigned long numero , char *s , int base ) Portabilidad : Definida en ANSI C Comentario : Retornan un puntero a un string formado por caracteres que representan los dígitos del número enviado como argumento . Por base se entiende la de la numeración en la que se quiere expresar el string , 10 para decimal , 8 para octal , 16 para hexadecimal , etc . itoa() convertirá un entero , mientras ultoa() lo hará con un unsigned long.

5. DETERMINACION DE LA LONGITUD DE UN STRING Hemos aplicado anteriormente esta función, damos aquí entonces , sólo una ampliación de sus caracteristicas. STRLEN() , _FSTRLEN • •

Header : <string.h> Prototipo : size_t strlen( const char *s )

size_t far _fstrlen( const char far *s ) • Portabilidad : Definidas en ANSI C • Comentario : Retornan un entero con la cantidad de caracteres del string . No toma en cuenta al terminador NULL . Por lo que la memoria real necesaria para albergar al string es 1+strlen(s) . _fstrlen() dá idéntico resultado , pero acepta como argumento un puntero " far " . • Ejemplo : .............. char s[128] ; gets(s) ; p = (char *)malloc( sizeof( strlen(s) + 1 ) ; 6. COPIA Y DUPLICACION DE STRINGS Vimos que el operador de asignación no está definido para strings , es decir que hacer p = q , donde p y q son dos arrays , no produce la copia de q en p y directamente la expresión no es compilada . Si en cambio p y q son dos punteros a caracteres , la expresión es compilada , pero no produce el efecto de copia , simplemente , cambia el valor de p , haciendo que apunte al MISMO string que q . Es decir que no se genera uno nuevo , por lo que todo lo operado sobre p afectará al original , apuntado por q . Para generar entonces , una copia de un string en otro lugar de la memoria , se deben

Curso de iniciación al lenguaje C  

#include &lt;stdio.h&gt; main() printf("Bienvenido a la Programación en lenguaje C \n"); return 0; { } es mucho /* este es un comentario cor...