-
ALGUNAS FUNCIONES DE LA LIBRERIA STANDARD
BORRAR UNA VENTANA clrscr()
La función clrscr() borra el texto visualizado en la ventana.
-
#include <conio.h>
void clrscr(void);
BORRAR HASTA EL FINAL DE LA LINEAclreol()
La función clreol() borra una línea desde la posición del cursor hasta el final de la mima.
-
#include <conio.h>
void clreol(void);
BORRAR UNA LINEA delline()
La función delline() borra la línea en la que se encuentra el cursor.
-
#include <conio.h>
void delline(void);
INSERTAR UNA LINEA insline()
La función insline() inserta una línea debajo de aquella donde se encuentra el cursor trasladando las demás un lugar hacia abajo.
-
#include <conio.h>
void insline(void);
POSICIONA EL CURSOR gotoxy()
La función gotoxy() posiciona el cursor.
-
#include <conio.h>
void gotoxy(int x, int y);
La función gotoxy(x,y) posiciona el cursor en la línea x, columna y.
OBTENER LA POSICION DEL CURSOR wherex(), whery()
Las funciones wherex(), wherey() dan la fila y la columna donde se encuentra el cursor.
-
#include <conio.h>
int wherex(void);
int wherey(void);
-
#include <stdio.h>
#include <conio.h>
main() {
-
int x,y;
clrscr();
for(y=1;y<20;y++)for(x=1;x<80;x++)
-
{
goto(x,y);
printf("%c",y+'A'-1);
}
-
for(y=2;y<22;y=y+2)
{
-
gotoxy(1,y);
delline();
insline();
} }
-
DETECTA SI SE HA APRETADO UNA TECLA kbhit()
La función kbhit() Detecta si se ha apretado una tecla. En caso positivo da el valor TRUE (diferente de cero). En caso contrario da FALSE (cero).
-
#include <conio.h>
int kbhit(void);
-
#include <stdio.h>
#include <conio.h>
main() {
-
int c, extended=0;
puts("\n Para continuar aprieta una tecla...");
while(!kbhit()); /* espera sin hacer nada */
printf(" FIN "); }
DETECTA CARACTERES ALFANUMERICOS isalnum()
La función isalnum() retorna un valor diferente de cero si el argumento es un valor del alfabeto o un número.
-
#include <ctype.h>
int isalnum(int c);
-
#include <stdio.h>
#include <conio.h>
#include <ctype.h>
main() {
-
char c='\0';
while(c!=' `)
-
c=getche();
if(isalnum(c))printf("\n%c caracter alfanumerico",c);
-
return 0; }
DETECTA CARACTERES DEL ALFABETO isalpha()
La función isalpha() da un valor diferente de cero si el argumento es una letra del alfabeto. En caso contrario da cero.
-
#include <ctype.h>
int isalpha(int c);
-
#include <stdio.h>
#include <conio.h>
#include <ctype.h>
main()
-
char c='\0';
while(c!=' `)
-
c=getche();
if(isalpha(c))printf("\n%c es una letra",c);
-
return 0;
DETECTA CARACTERES DE CONTROL iscntrl()
La función iscntrl() da un valor diferente de cero si el argumento tiene un valor entre 0 y 0x1F o si es igual a 0x7F (DEL). En caso contrario retorna 0.
-
#include <ctype.h>
int iscntrl(int c);
-
#include <stdio.h>
#include <conio.h>
#include <ctype.h>
main() {
-
char c='\0';
while(c!=' `)
{
-
c=getche();
if(iscntrl(c))printf("\n%0X caracter de control",c);
}
-
return 0; }
DETECTA CARACTERES 0-9 isdigit()
La función isdigit() da un valor diferente a 0 si el argumento es un carácter comprendido entre el 0 y el 9.
-
#include <ctype.h>
int isdigit(int c);
-
#include <stdio.h>
#include <conio.h>
#include <ctype.h>
main() {
-
char c='\0';
while(c!=' `)
{
-
c=getche();
if(isdigit(c))printf("\n%c caracter alfanumerico",c);
}
-
return 0; }
DETECTA CARACTERES EXADECIMALES isxdigit()
La función isdigit() da un valor diferente de cero si el argumento es un carácter comprendido entre 0 - 9, a - f o A - f.
-
#include <ctype.h>
int isxdigit(int c);
-
#include <stdio.h>
#include <conio.h>
#include <ctype.h>
main() {
-
char c='\0';
while(c!=' `)
{
-
c=getche();
if(isxdigit(c))printf("\n%c carattere esadecimale",c);
}
-
return 0; }
DETECTA CARACTERES IMPRIMIBLES isgraph()
La función isgraph() da distinto de cero si el argumento es un carácter cuyo valor esta comprendido entre (0x21 y 0x7E). En caso contrario da 0.
-
#include <ctype.h>
int isgraph(int c);
-
#include <stdio.h>
#include <conio.h>
#include <ctype.h>
main() {
-
char c='\0';
while(c!=' `)
{
-
c=getche();
if(isgraph(c))printf("\n%c caracter imprimible",c);
}
-
return 0; }
DETECTA CARACTERES IMPRIMIBLES INCLUSO EL ESPACIO isprint()
La función isgraph() da distinto de cero si el argumento es un carácter cuyo valor esta comprendido entre (0x20 y 0x7E). En caso contrario da 0.
-
#include <ctype.h>
int isprint(int c);
-
#include <stdio.h>
#include <conio.h>
#include <ctype.h>
main() {
-
char c='\0';
while(c!=' `)
{
-
c=getche();
if(isprint(c))printf("\n%c caracter imprimible",c);
}
-
return 0; }
DETECTA LETRAS MINUSCULAS islower()
La función islower() da el valor distinto de cero si el argumento es una letra minúscula. En caso contrario da 0.
-
#include <ctype.h>
int islower(int c);
-
#include <stdio.h>
#include <conio.h>
#include <ctype.h>
main() {
-
char c='\0';
while(c!=' `)
{
-
c=getche();
if(islower(c))printf("\n%c letra minuscula,c);
}
-
return 0; }
DETECTA LETRAS MAYUSCULAS isupper()
La función isupper() da un valor distinto de cero si el argumento es una letra mayúscula. En caso contrario retorna el valor 0.
-
#include <ctype.h>
int isupper(int c);
-
#include <stdio.h>
#include <conio.h>
#include <ctype.h>
main() {
-
char c='\0';
while(c!=' `)
{
-
c=getche();
if(islower(c))printf("\n%c letra mayuscula,c);
}
-
return 0; }
CONVERSION EN LETRAS MINUSCULAS tolower()
La función tolower() retorna la letra equivalente minúscula de la indicada en el argumento. Si el argumento no es una letra mayúscula la función retorna dicha letra sin variarla.
-
#include <ctype.h<
int tolower(int c);
CONVERSION EN LETRAS MAYUSCULAS toupper()
La función tolower() retorna la letra equivalente mayúscula de la indicada en el argumento. Si el argumento no es una letra minúscula la función retorna dicha letra sin variarla.
-
#include <ctype.h<
int toupper(int c);
-
#include <ctype.h>
#include <stdio.h>
void main() {
-
printf("\n %c",tolower(`R')); /* visualiza r */
printf("\n %c",toupper(`t')); /* visualiza T */ }
CONCATENACION DE STRINGS strcat()
La función strcat() concatena dos strings
-
#include <string.h>
char *strcat(char *str1,char *str2);
concatena una copia del string str2 al string str1 y termina str1 con `\0'. El string str2 no se modifica. La función strcat() da como valor de retorno un puntero a str1.
Observación: Dada la falta de control de la dimensión del string str1 es indispensable asegurarse de que str1 tenga la longitud suficiente para contener el string str2.
-
#include <string.h>
#include <stdio.h>
void main() {
-
char str1[80]="String 1-", str2[30]="String 2";
printf("\n %s",strcat(str1,str2)); /* visualiza String 1-String 2 */ }
COMPARACION DE STRINGHS strcmp()
La función strcmp() compara dos strings
-
#include <string.h>
int strcmp(const char *str1,const char *str2);
La función strcmp() compara str1 con str2 y retorna un valor entero según el siguiente criterio.
inferior a 0 si str1<str2
0 si str1=str2
superior a 0 si str1>str2
-
#include <string.h>
#include <stdio.h>
void main() {
-
char passwd[9]="";
while(strcmp(s,"Granada")!=0)
{
-
printf(\n password: ");
scanf("%8s",passwd);
}
-
prinf("\n Bravo "); }
COPIA STRINGS strcpy
La función strcpy() copia un string en otro.
-
#include <string.h>
char *strcpy(char *str1,char *str2);
La función strcpy() permite copiar el contenido del string str2 en str1. La función strcpy() retorna un puntero a str1.
LONGITUD DE UN STRING strlen
La función strlen() da la longitud de un string
-
#include <string.h>
unsigned int strlen(const char *str);
La función strlen() retorna el número de caracteres contenidos en el string str. El carácter de terminación `\0' no se cuenta.
ENCONTRAR UN STRING DENTRO DE OTRO strstr()
La función strstr() intenta encontrar un string dentro de otro.
-
#include <string.h>
Char *strstr(const char *str1,const char *str2);
La función strstr() da como valor de retorno un puntero al primer carácter del string contenido en str1 que coincida con el string str2. Si la búsqueda es negativa la función retorna 0. (puntero a NULL).
Visualiza el mensaje "es una prueba"
-
#include <string.h>
#include <stdio.h>
void main() {
-
char *p;
p=strstr("Esto es una prueba");
puts(p); }
SEGUNDOS DEL SISTEMA time()
La función time() reporta el número de segundos transcurridos desde el 1.1.1970.
-
#include <time.h>
time_t time(time_t *timer);
La función time() puede ser llamada con un puntero a NULL o con un puntero a una variable de tipo time_t. Si se adopta esta última solución el numero de segundos es asignado también al argumento.
-
#include <stdio.h>
#include <time.h>
void main(void) {
-
time_t t;
t=time(NULL);
printf("\n Segundos transcurridos desde 1.1.1970: %ld",t); }
NUMEROS CASUALES rand(), srand()
La función srand() permite inicializar el generador de números casuales del C con un valor diferente de 1 (default). La función rand() reporta un número casual entre 0 y 32767
-
#include <stdlib.h>
void srand(unsigned initial);
int rand(void);
-
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
int main(void) {
-
int i;
srand((unsigned) time(NULL));
printf("\n Random numbers \n\n");
for(i=0;i<10;i++)printf("\n %d",rand()%100); }
COPIA DE UN BLOQUE EN LA MEMORIA memcpy(), memmove(),_fmemcpy()
La funciones memcpy(), memmove() _fmemcpy () copian un bloque de memoria de un espacio de la misma a otro.
-
#include <mem.h>
#include <string.h>
void *memcpy(void *dest, void *source,size_t n);
void *memmove(void *dest, void *source,size_t n);
void far * _fmemcpy(void far*dest,void *source,
size_t n);
_fmencpy() es la versión para punteros lejanos (far pointer).
Ambas funciones copian el bloque source de tamaño n en espacio dest.
Las cabeceras *include pueden ser <mem.h> o bien <string.h>.
El valor de retorno es un puntero al bloque dest.
-
#include <stdio.h>
#include <string.h>
int main() {
-
char source[]="**********************";
char dest[]="abcdefghijklmnopqrstuvxyz....1234567890";
char *ptr;
printf("\n destino antes de copiar %s",dest);
ptr = (char *)memcpy(dest,source,strlen(source));
if(ptr)printf("\n destino despues de copiar %s",dest);
else printf("\n error en memcpy ");
return 0; }
ASIGNA UN VALOR EN UN BLOQUE EN LA MEMORIA memset(),
_fmemset()
Las funciones memset(), _fmenset() meten un determinado valor c en los n primeros bytes de un bloque de memoria.
-
#include <mem.h>
#include <string.h>
void *memset(void *dest, int c,size_t n);
void far * _fmemset(void far *dest,int c,size_t n);
_fmenset() es la versión para punteros lejanos (far pointer).
-
#include <stdio.h>
#include <string.h>
void main() {
-
char buffer[]="Hola muchachos";
printf("\n buffer antes de menset %s",buffer);
menset(buffer,'*',strlen(buffer)-1);
printf("\n buffer despues de memset %s",buffer); }
CONVERSION DE UN STRING EN ENTERO atoi()
-
#include <stdlib.h>
int atoi(const char *str);
La función atoi() convierte el string representado por el puntero str en un valore de tipo entero. El string o cadena de caracteres tiene que contener un número entero válido de lo contrario el valor de retorno es cero. El string puede acabar en cualquier carácter que no forme parte de un valor entero. Si por ejemplo atoi es llamada con el string "123.45" el valor retornado es 123 perdiéndose la parte decimal 0.34.
-
#include <stdio.h>
#include <stdlib.h>
void main() {
-
char n1[10],n2[10];
puts("n1? ");scanf("%9s",n1);
puts("n2? ");scanf("%9s",n2);
printf(" La suma es %d",atoi(n1)+atoi(n2)); }
CONVERSION DE UN STRING EN UN VALOR DOBLE atof()
-
#include <stdlib.h>
int atof(const char *str);
La función atof() convierte el string representado por el puntero str en un valor de tipo double. El string o cadena de caracteres tiene que contener un número de coma flotante válido de lo contrario el valor de retorno es cero. El string puede acabar en cualquier carácter que no forme parte de un valor de coma flotante. Si por ejemplo atof es llamada con el string "123.45SALVE" el valor retornado es 123.45
CONVERSION DE UN STRING EN UN VALOR LONG INT atol()
-
#include <stdlib.h>
int atof(const char *str);
La función atol() convierte el string representado por el puntero str en un valor de tipo entero largo. El string o cadena de caracteres tiene que contener un número entero válido de lo contrario el valor de retorno es cero. El string puede acabar en cualquier carácter que no forme parte de un valor entero. Si por ejemplo atol() es llamada con el string "123.45" el valor retornado es 123 perdiéndose la parte decimal 0.34.
ACABADO INMEDIATODE UN PROGRAMA exit()
-
#include <stdlib.h>
exit(int status);
La función exit() causa la terminación inmediata de un programa.
Conversión de un numero en Hexadecimal.
-
#include <stdlib.h>
#include <stdio.h>
void error() {
-
puts(" ERROR: Debes poner parámetros");
exit(1); }
-
void main(int argc,char *argv[]) {
-
if (argc) printf("\n %lX",atol(argv[1]));
else error(); }