Compara si dos cadenas son iguales utilizando punteros

#include "conio.h"
#include "stdio.h"
#include "ctype.h"
 
void main()
{
 clrscr();
 char cad1[100], *ptr_cad1;
 char cad2[100], *ptr_cad2;
 int cont,i;
 printf("Dame la cadena 1: ");gets(cad1);
 printf("Dame la cadena 2: ");gets(cad2);
 ptr_cad1=cad1;
 ptr_cad2=cad2;
 i=0;
 cont=0;
 do
 {
  i++;
 } while(*ptr_cad1++);
 do
 {
  cont++;
 } while(*ptr_cad2++);
 
 if(i==cont)
  {
   ptr_cad1=cad1;
   ptr_cad2=cad2;
   i=0;
   cont=0;
   do{
    if((*ptr_cad1)!=(*ptr_cad2))
     i=1;
    cont++;
    *ptr_cad2++;
   }while(*ptr_cad1++);
   if(i==1)
    printf("Las cadenas son diferentes");
   else
    printf("Las cadenas son iguales");
  }
 else
  printf("nLas cadenas son diferentes");
 getch();
}

¿Has encontrado algún error? ¿Tienes la solución? Dejame tu correción ;-)

Antes de comentar: Gran parte de los ejercicios propuestos no tienen librerías debido a que Wordpress las eliminó al verlas como etiquetas HTML. Si sabes/tienes/conoces las librerías que hacen falta, déjalo en los comentarios. Y lo mas importante: Todos los ejemplos fueron realizados por personas con únicamente conocimiento básico del lenguaje, no de programación.

Otro punto importante: Si vas a sugerir un segmento de código en algún lenguaje debes hacerlo así:

  • Si es lenguaje C [c]Código en C[/c]
  • Si es lenguaje Pascal [pascal]Aquí dentro el código de Pascal[/pascal].

De esta manera el código coloreas el código.

Otro punto importante para muchos que sienten que se les ignora: Todos los comentarios los reviso y en su debido momento los apruebo, pero ojo con el con lo siguiente:

Me reservo el derecho de alterar, publicar o no los comentarios as´ como cambiar mis condiciones en el momento que así lo requiera.

¿estas de acuerdo? entonces adelante que ya te he quitado bastante tiempo leyendo esta basura de advertencias :)