1 00:00:00,000 --> 00:00:03,250 >> ALTAVOZ 1: Ahora vamos a escribir un programa realmente compara dos cadenas 2 00:00:03,250 --> 00:00:04,245 carácter a carácter. 3 00:00:04,245 --> 00:00:06,830 Usemos como comparar 0 nuestro punto de partida. 4 00:00:06,830 --> 00:00:11,550 Pero primero vamos a pelar la capa que es el tipo de cadena y reescribirla 5 00:00:11,550 --> 00:00:14,120 por lo que verdaderamente es, que es una estrella de carbón. 6 00:00:14,120 --> 00:00:17,740 Esa es la dirección de un personaje, específicamente el primer carácter de un 7 00:00:17,740 --> 00:00:21,010 secuencia de caracteres que estaríamos más generalmente conocido como una cadena. 8 00:00:21,010 --> 00:00:21,880 >> Lo mismo para t. 9 00:00:21,880 --> 00:00:25,660 Vamos a volver a escribir esa declaración de cadena como estrella de caracteres. 10 00:00:25,660 --> 00:00:28,690 Y ahora tenemos que ya no compare s contra t, no sea 11 00:00:28,690 --> 00:00:30,150 comparamos dos direcciones. 12 00:00:30,150 --> 00:00:33,180 Queremos comparar realmente el dos propios hilos. 13 00:00:33,180 --> 00:00:37,520 Para ello, podemos utilizar una función declarado en string.h. 14 00:00:37,520 --> 00:00:40,920 Así que voy a añadir que incluye en la parte superior de mi archivo. 15 00:00:40,920 --> 00:00:43,130 >> Y entonces voy a cambiar esta línea aquí. 16 00:00:43,130 --> 00:00:47,920 En lugar de comparar s contra t, estoy va a llamar a un borrador función revuelo, 17 00:00:47,920 --> 00:00:52,290 para la comparación de cadenas, y pasar como argumentos s y t. 18 00:00:52,290 --> 00:00:56,480 Vamos a diferimos luego a cadena a comparar averiguar si s y t son de hecho iguales 19 00:00:56,480 --> 00:00:59,870 y dejar que averiguar cómo comparar les carácter a carácter. 20 00:00:59,870 --> 00:01:02,410 >> Ahora, de acuerdo con la documentación para la comparación de cadenas, en realidad es 21 00:01:02,410 --> 00:01:06,920 va a devolver 0 si las dos cadenas apuntada por s y t son los mismos. 22 00:01:06,920 --> 00:01:09,490 Se va a devolver un número negativo si s debe venir antes de t 23 00:01:09,490 --> 00:01:13,740 alfabéticamente o un número positivo si s debe venir en pos t alfabéticamente. 24 00:01:13,740 --> 00:01:16,090 >> Pero por ahora, sólo nos importa sobre la igualdad. 25 00:01:16,090 --> 00:01:19,270 Así que voy a probar simplemente si el valor de retorno de la cadena de comparar, 26 00:01:19,270 --> 00:01:21,450 pasando en s y t, es igual a 0. 27 00:01:21,450 --> 00:01:24,940 Y si es así, voy a afirmar que las dos cadenas son iguales. 28 00:01:24,940 --> 00:01:26,820 >> Pero yo voy a hacer uno otro cambio también. 29 00:01:26,820 --> 00:01:30,410 Resulta que la cadena get, por su documentación, a veces se puede volver 30 00:01:30,410 --> 00:01:34,320 null, un valor centinela que, según para obtener la documentación de las cadenas, los medios 31 00:01:34,320 --> 00:01:35,450 algo malo ha pasado. 32 00:01:35,450 --> 00:01:38,830 Por ejemplo, se nos acabó la memoria o el usuario de alguna manera no cooperaba. 33 00:01:38,830 --> 00:01:41,080 >> Cadena de comparar, por su parte, es un poco frágil. 34 00:01:41,080 --> 00:01:44,730 Si se le pasa nula, ya sea para su primero o segundo argumento, el mal 35 00:01:44,730 --> 00:01:45,650 las cosas pueden suceder. 36 00:01:45,650 --> 00:01:47,970 Las cosas malas por lo general involucran fallos de segmentación. 37 00:01:47,970 --> 00:01:52,210 Así que para evitar que el potencial completo, Estoy primero vamos a terminar con esto el uso de 38 00:01:52,210 --> 00:01:56,350 string compare por sangría este conjunto bloque de código y primero sólo haciendo 39 00:01:56,350 --> 00:02:03,140 que si s no es igual a nula y t es distinto de nulo. 40 00:02:03,140 --> 00:02:08,280 >> Envolviendo que si más que construir escrito antes con llaves como 41 00:02:08,280 --> 00:02:12,270 bien, así que esta vez logro tocar s y t si estoy seguro de que 42 00:02:12,270 --> 00:02:13,450 que no son nulos. 43 00:02:13,450 --> 00:02:17,220 Ahora vamos a guardar, compilar y volver a ejecutar este programa. 44 00:02:17,220 --> 00:02:22,240 >> Haga comparar 1 punto slash comparar 1. 45 00:02:22,240 --> 00:02:23,950 Voy a decir hola de nuevo. 46 00:02:23,950 --> 00:02:25,890 Seguido por saludar una vez más. 47 00:02:25,890 --> 00:02:28,110 Y esta vez, de hecho, escriba la misma cosa. 48 00:02:28,110 --> 00:02:30,255