Estoy creando una librería ANSI la cual llame easylib.h, la idea de la librería es facilitarnos la vida al hacer programas en c y quería que me recomienden cosas para ponerle. Esto es lo que llevo asta ahora:
#include <stdio.h>
#include <stdlib.h>
//Este define hace un bucle de la cantidad de veces que se le alla especificado
#define For(a,b) for(a = 0;a < b;a++)
#define true 0
#define false 1
int i,j,l;
int comps(char p1[],char p2[]);
void backslash(char b,int n);
void cleans();
void gotoxy(int x,int y);
//Esta funcion compara 2 strings, en el caso de que sean iguales envia 0 y en su defecto envia 1
int comps(char p1[],char p2[]){
int pr = true;
i = 0;
do{
if(p1[i] != p2[i]){
pr = false;
}
i++;
}while (pr == true && p1[i] != '\0' || p2[i] != '\0' );
i = 0;
return pr;
}
//Esta funcion hace un/os \n o \t segun se le indique
void backslash(char b,int n){
if(b == 'n')for(i = 0; i < n;i++){printf("\n"); }
else if(b == 'n')for(i = 0; i < n;i++){printf("\t"); }
}
void cleans(){
#if defined(__linux__)
system("clear");
#endif
#if defined(_WIN32)
system("cls");
#endif
}
void gotoxy(int x,int y){
printf("%c[%d;%df",0x1B,y,x);
}
PD:Aca voy actualizando el código http://elfrikiinformatico.blogspot.com.ar/p/easylibh.html (http://elfrikiinformatico.blogspot.com.ar/p/easylibh.html)
No te diré qué funcionalidades meterle, eso es algo que tú verás, según lo que queiras que al librería haga, o las necesidades que tengas. Lo que sí puedo decir, es que antes de meter funciones en la librería, te asegures de que funcionan.
En comps:
while (pr == true && p1[i] != '\0' || p2[i] != '\0' );
Pon paréntesis. Aunque pr sea falso y p[ i ] sea '\0', si p2[ i ] es diferente de '\0', seguirá en el bucle.
while (pr == true && ( p1[i] != '\0' || p2[i] != '\0' ) );
En backslash:
else if(b == 'n')for(i = 0; i < n;i++){printf("\t"); }
Entiendo que se trata de un error al copiarlo. Habrás querido decir b == 't'.
Para empezar, no es muy ordenado mezclar funciones de sistema, entrada-salida con manejo de cadenas
Cada cosa en su lugar (su propia libreria)