elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: (TUTORIAL) Aprende a emular Sentinel Dongle By Yapis


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  [C] Comparar 2 cadenas sin usar <string.h>
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 [2] Ir Abajo Respuesta Imprimir
Autor Tema: [C] Comparar 2 cadenas sin usar <string.h>  (Leído 10,521 veces)
Ataulfo7

Desconectado Desconectado

Mensajes: 13



Ver Perfil
Re: [C] Comparar 2 cadenas sin usar <string.h>
« Respuesta #10 en: 9 Abril 2015, 10:17 am »

Ahora sii, jajaja, muchas gracias, es que estoy aprendiendo C y aun soy un poco novato con todo esto, me sirvio de mucho!  ;-) ;-)


En línea

Miseryk

Desconectado Desconectado

Mensajes: 225


SI.NU.SA U.GU.DE (2NE1 - D-Unit)


Ver Perfil
Re: [C] Comparar 2 cadenas sin usar <string.h>
« Respuesta #11 en: 9 Abril 2015, 17:32 pm »



Código
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. int main()
  6. {
  7. cout << strcmpi("asd", "ASD") << endl;
  8.  
  9. cin.get();
  10.  
  11. return 0;
  12. }
  13.  


En línea

Can you see it?
The worst is over
The monsters in my head are scared of love
Fallen people listen up! It’s never too late to change our luck
So, don’t let them steal your light
Don’t let them break your stride
There is light on the other side
And you’ll see all the raindrops falling behind
Make it out tonight
it’s a revolution

CL!!!
ivancea96


Desconectado Desconectado

Mensajes: 3.412


ASMático


Ver Perfil WWW
Re: [C] Comparar 2 cadenas sin usar <string.h>
« Respuesta #12 en: 9 Abril 2015, 17:47 pm »

Código
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. int main()
  6. {
  7. cout << strcmpi("asd", "ASD") << endl;
  8.  
  9. cin.get();
  10.  
  11. return 0;
  12. }
  13.  

Incluso si strcmpi() fuera una función estándar, no es lo mismo que strcmp(). Y aquí se trata de comparar cadenas asecas.
En línea

Miseryk

Desconectado Desconectado

Mensajes: 225


SI.NU.SA U.GU.DE (2NE1 - D-Unit)


Ver Perfil
Re: [C] Comparar 2 cadenas sin usar <string.h>
« Respuesta #13 en: 9 Abril 2015, 17:52 pm »

Incluso si strcmpi() fuera una función estándar, no es lo mismo que strcmp(). Y aquí se trata de comparar cadenas asecas.

Código
  1. #include <iostream>
  2.  
  3. int main()
  4. {
  5. std::cout << strcmp("asd", "ASD") << std::endl;
  6.  
  7. std::cin.get();
  8.  
  9. return 0;
  10. }
  11.  

así?
En línea

Can you see it?
The worst is over
The monsters in my head are scared of love
Fallen people listen up! It’s never too late to change our luck
So, don’t let them steal your light
Don’t let them break your stride
There is light on the other side
And you’ll see all the raindrops falling behind
Make it out tonight
it’s a revolution

CL!!!
ivancea96


Desconectado Desconectado

Mensajes: 3.412


ASMático


Ver Perfil WWW
Re: [C] Comparar 2 cadenas sin usar <string.h>
« Respuesta #14 en: 9 Abril 2015, 18:02 pm »

strcmp() es de la librería string.h. Además, recuerda que es C.
En línea

ecfisa

Desconectado Desconectado

Mensajes: 114


Ver Perfil
Re: [C] Comparar 2 cadenas sin usar <string.h>
« Respuesta #15 en: 9 Abril 2015, 19:07 pm »

Hola.

Otra forma puede ser:
Código
  1. int cmpstr( char s1[], char s2[] ) {
  2.  int i;
  3.  
  4.  for( i=0; s1[i] == s2[i]; i++ )
  5.    if ( s1[i] == '\0' ) return 0;
  6.  return  s1[i] - s2[i] ;
  7. }
  8.  
o también:
Código
  1. int cmpstr( char* a, char* b ) {
  2.  
  3.  for( ; *a == *b; a++, b++ )
  4.    if ( *a == '\0') return 0;
  5.  
  6.  return *a - *b;
  7. }
  8.  

Saludos .
« Última modificación: 9 Abril 2015, 19:09 pm por ecfisa » En línea

Miseryk

Desconectado Desconectado

Mensajes: 225


SI.NU.SA U.GU.DE (2NE1 - D-Unit)


Ver Perfil
Re: [C] Comparar 2 cadenas sin usar <string.h>
« Respuesta #16 en: 9 Abril 2015, 19:22 pm »

O de esta forma (también la dejo para algún curioso que esté en este tema)

Código
  1. #include <Windows.h>
  2. #include <iostream>
  3.  
  4. typedef int (*Mystrcmp)(const char * _Str1, const char * _Str2);
  5. Mystrcmp M_strcmp;
  6.  
  7. int main()
  8. {
  9. M_strcmp = (Mystrcmp)GetProcAddress(GetModuleHandle("NTDLL.DLL"), "strcmp");
  10.  
  11. std::cout << M_strcmp("ASD", "ASD") << std::endl;
  12.  
  13. std::cin.get();
  14.  
  15. return 0;
  16. }
  17.  
En línea

Can you see it?
The worst is over
The monsters in my head are scared of love
Fallen people listen up! It’s never too late to change our luck
So, don’t let them steal your light
Don’t let them break your stride
There is light on the other side
And you’ll see all the raindrops falling behind
Make it out tonight
it’s a revolution

CL!!!
Páginas: 1 [2] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Comparar cadenas sin usar strcmp « 1 2 »
Programación C/C++
Rockmore 12 20,602 Último mensaje 25 Octubre 2010, 07:01 am
por do-while
[Solucionado] Comparar un String con cada una de las partes de otro String « 1 2 »
.NET (C#, VB.NET, ASP)
Segurida 13 11,552 Último mensaje 14 Mayo 2011, 18:52 pm
por Segurida
¿Comparar dos cadenas de caracteres en php?
PHP
Netstat89 5 10,863 Último mensaje 1 Octubre 2012, 21:21 pm
por Shell Root
Error al comparar cadenas
Programación C/C++
amchacon 1 2,328 Último mensaje 26 Enero 2013, 15:28 pm
por amchacon
Error al comparar cadenas en estructuras
Programación C/C++
ramona98 3 2,782 Último mensaje 28 Agosto 2013, 10:23 am
por do-while
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines