Ver Mensaje Individual
  #3 (permalink)  
Antiguo 02/10/2015, 15:22
Avatar de kspr
kspr
 
Fecha de Ingreso: agosto-2011
Ubicación: Ecuador
Mensajes: 43
Antigüedad: 13 años, 2 meses
Puntos: 7
Respuesta: Función comparar strings en c

Puedes basarte en el algoritmo de strcmp, y sería tal y como te menciona @aguml

http://www.opensource.apple.com/sour...c/gen/strcmp.c
http://sourceforge.net/p/mspgcc/msp4...tring/strcmp.c

por un ejemplo:

Código C:
Ver original
  1. #include <stdio.h>
  2. #include <stdbool.h>
  3.  
  4. void str_equals (const char *str1, const char *str2) {
  5.     const char *str1_ptr = str1;
  6.     const char *str2_ptr = str2;
  7.     bool equals = true;
  8.  
  9.     while (*str1_ptr != '\0') {
  10.  
  11.         if(*str2_ptr == '\0') {
  12.             equals = false;
  13.             break;
  14.         }
  15.  
  16.         if(*str2_ptr > *str1_ptr ||
  17.            *str1_ptr > *str2_ptr) {
  18.             equals = false;
  19.             break;
  20.         }
  21.  
  22.         printf("[%c] == [%c]\n", (char)*str1_ptr, (char)*str2_ptr);
  23.  
  24.         str1_ptr++;
  25.         str2_ptr++;
  26.     }
  27.  
  28.     if (*str2_ptr != '\0') {
  29.         equals = false;
  30.     }
  31.  
  32.     printf("son: %s\n", equals ? "iguales" : "diferentes");
  33. }
  34.  
  35. int main () {
  36.  
  37.     str_equals("cadena 1", "cadena 2");
  38.     str_equals("cadena igual", "cadena igual");
  39.  
  40.     return 0;
  41. }