Page 69

Un puntero nulo, no corresponde a un string vacio, sinó que su contenido ha sido asignado a la dirección 0 ó NULL, es decir que no apunta a ningun string aún.

Hay que recalcar que, practicamente todas las funciones que describiremos a continuación , basan su operatoria en la suposición que los strings que se le pasan como argumento , terminan en el caracter NULL , si por error esto no fuera así , los resultados son catastróficos , produciendose generalmente la destrucción de los datos y el aborto del programa . 2. FUNCIONES DE IMPRESION DE STRINGS Daremos un análisis de las funciones que permiten la impresión en pantalla de strings , muchas de ellas pueden obviamente , utilizarse para imprimir otro tipo de variable , pero aquí sólo describiremos su aplicación particular sobre el tema de nuestro interes. PRINTF() • • • •

Header : <stdio.h> Prototipo : int printf( const char *formato , argumento , ......... ) Portabilidad : Definida en ANSI C. No es compatible con Windows Comentario : Retorna un entero igual a la cantidad de caracteres que ha impresso , ó un EOF (End Of File , por lo general -1 ) en caso de error ú operación fallida . Tiene un uso más generalizado que el que aquí describimos , ya que por el momento veremos sólo su aplicación a strings . El string de formato puede ser construido directamente en la función , delimitándolo con comillas , ó definido antes en el listado , y pasado como argumento por medio de un puntero . Puede contener , directamente el texto a imprimir , si éste es una constante , en cuyo caso no se pasarán más argumentos , ó una mezcla de texto constante con secuencias de control de formato para la impresión del resto de los parámetros pasados. La secuencia de control comienza con el caracter % . En caso de impresión de strings , el comando debe terminarse con la letra s. Entre el comienzo (%) y el fín (s) de la secuencia de control , pueden introducirse opcionalmente modificadores cuyo sentido , en el caso de los strings , es el siguiente : % [justificación] [longitud] [.presicion] s La (longitud) dá la cantidad MINIMA de caracteres a imprimir , independientemente de cuantos caracteres tenga el string . Si este valor es mayor que la cantidad de caracteres del string , se rellenará con blancos el sobrante , colocandose los mismos a la derecha ó izquierda , segun sea la justificación . Si la (longitud) es menor que la del string , este quedará truncado . La precisión es un número , que debe estar precedido por un punto , e indica el máximo número de caracteres del string , que se imprimirán . La justificación "default" es hacia la derecha , un signo menos en este campo impone una justificacion a la izquierda . Dentro de la secuencia de comando pueden ubicarse secuencias de escape como las vistas en capítulos anteriores . Un caso especial se dá , cuando en el lugar de la longitud se coloca un asterisco (*) , éste implica que la longitud vendrá expresada por el argumento que sigue al string en la lista de los mismos (un entero) . Ejemplos : En los ejemplos siguientes se ha colocado el caracter | adelante y atras de la secuencia de comando , para mostrar donde empieza y donde termina la impresión del string . ........... p = "Lenguaje C" ;

/* 10 caracteres */

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...

Advertisement