1 00:00:00,000 --> 00:00:00,440 2 00:00:00,440 --> 00:00:00,860 >> ALTAVEU 1: Molt bé. 3 00:00:00,860 --> 00:00:03,260 L'últim programa va ser una mica avorrit. 4 00:00:03,260 --> 00:00:05,510 Seguirem endavant i personalitzar això una mica. 5 00:00:05,510 --> 00:00:07,710 En lloc de dir hola món, Per què no anem per davant 6 00:00:07,710 --> 00:00:09,680 i dir hola David? 7 00:00:09,680 --> 00:00:12,500 Bé, per fer això, podria acostar això en un parell de maneres. 8 00:00:12,500 --> 00:00:15,760 Podria, per descomptat, el codi només difícil David, però això no és tot el que 9 00:00:15,760 --> 00:00:17,650 fonamentalment diferent des de l'última versió. 10 00:00:17,650 --> 00:00:21,430 Així que anem a fer un pas endavant, que desfer canviar, i en lloc d'inserir un nou 11 00:00:21,430 --> 00:00:23,980 línia de codi en la línia cinc una vegada va ser. 12 00:00:23,980 --> 00:00:28,970 >> Específicament, què vaig a fer aquí és afegir en nom de la cadena, de manera que 13 00:00:28,970 --> 00:00:30,920 declaració d'una variable. 14 00:00:30,920 --> 00:00:34,240 Recordeu que en C, no només vostè té per donar una variable un nom, que en 15 00:00:34,240 --> 00:00:38,110 aquest cas és el nom, també té per especificar de quin tipus és. 16 00:00:38,110 --> 00:00:41,970 Anem a veure un altre tipus en poc temps, entre ells sencers i de punt flotant 17 00:00:41,970 --> 00:00:46,480 valors i més, però de moment, la cadena és només una paraula o una frase, més 18 00:00:46,480 --> 00:00:49,340 formalment, una seqüència de zero o més caràcters. 19 00:00:49,340 --> 00:00:53,760 Així que de moment, aquesta línia és de cinc dient: Dóna'm una variable anomenada nom 20 00:00:53,760 --> 00:00:56,560 el tipus de dades és string. 21 00:00:56,560 --> 00:01:00,460 >> Ara, vull que per emmagatzemar un valor en allà, i per fer això en C, fem servir la igualtat 22 00:01:00,460 --> 00:01:03,030 signar, també conegut com el operador d'assignació. 23 00:01:03,030 --> 00:01:04,860 Així que vaig a procedir de la següent manera. 24 00:01:04,860 --> 00:01:10,220 Igual cometes, tanca, D-A-V-I-D, pressupost tancat, punt i coma. 25 00:01:10,220 --> 00:01:15,595 L'efecte net en la línia cinc és ara declarar una cadena, D-A-V-I-D, l'emmagatzematge 26 00:01:15,595 --> 00:01:19,480 des del costat dret d'aquesta expressió en la variable en la 27 00:01:19,480 --> 00:01:21,480 costat esquerre d'aquesta expressió. 28 00:01:21,480 --> 00:01:25,970 Així que al final d'aquesta línia, tenim D-A-V-I-D s'emmagatzema a l'interior d'una variable 29 00:01:25,970 --> 00:01:27,450 anomenat nom. 30 00:01:27,450 --> 00:01:28,910 >> Ara utilitzarem aquesta variable. 31 00:01:28,910 --> 00:01:35,010 En la línia 6, vaig a substituir món amb un marcador de posició. 32 00:01:35,010 --> 00:01:39,960 % S es defineix d'acord amb la documentació per printf com un 33 00:01:39,960 --> 00:01:41,690 marcador de posició per a una cadena. 34 00:01:41,690 --> 00:01:44,620 En altres paraules, és una manera d'informar printf que em posaré 35 00:01:44,620 --> 00:01:47,930 algun altre valor aquí, però permetin-me el informarem per un moment el que 36 00:01:47,930 --> 00:01:49,180 que serà. 37 00:01:49,180 --> 00:01:52,800 Ara, com he de procedir per explicar printf qual cosa el valor serà? 38 00:01:52,800 --> 00:01:56,850 >> Bé, he de trobar un printf El segon argument, i per fer això, 39 00:01:56,850 --> 00:02:00,460 de posar una coma després de la primera argument, que va ser aquesta cita 40 00:02:00,460 --> 00:02:04,990 cadena, i després he de especificar quins Valor vull tapar en què 41 00:02:04,990 --> 00:02:07,010 marcador de posició primera de l'argument. 42 00:02:07,010 --> 00:02:10,880 Així que el nom del meu variable és, de Per descomptat, el nom, de manera que n'hi ha prou amb teclejar 43 00:02:10,880 --> 00:02:14,000 "Nom" com el segon argument printf. 44 00:02:14,000 --> 00:02:15,070 Ara no es deixi enganyar. 45 00:02:15,070 --> 00:02:20,440 Tot i que hi ha una coma a l'interior de la cadena entre cometes, que és de fet 46 00:02:20,440 --> 00:02:24,370 dins de la cadena perquè no es separar un argument d'un altre. 47 00:02:24,370 --> 00:02:28,740 Només que aquesta coma que està fora d'aquest cadena entre cometes en realitat separa 48 00:02:28,740 --> 00:02:31,700 El primer argument printf d' el seu segon argument. 49 00:02:31,700 --> 00:02:34,270 >> Ara anem a compilar aquest programa. 50 00:02:34,270 --> 00:02:36,500 Fer hola un. 51 00:02:36,500 --> 00:02:39,570 Oh Déu meu, cinc errors generats, i del meu programa 52 00:02:39,570 --> 00:02:41,100 només set línies. 53 00:02:41,100 --> 00:02:44,720 Bé, com sempre, no mirar el passat dels errors a la pantalla. 54 00:02:44,720 --> 00:02:47,960 Miri la primera, perquè potser hi ha un efecte en cascada pel qual 55 00:02:47,960 --> 00:02:51,600 només un error de fins crear la part superior aparició de més errors que hi ha 56 00:02:51,600 --> 00:02:52,570 en realitat són. 57 00:02:52,570 --> 00:02:56,620 >> Així que permetin-me desplaçar-se cap amunt, i el primer d'aquests error en negreta aquí és l'ús de 58 00:02:56,620 --> 00:02:59,140 cadena d'identificador no declarat. 59 00:02:59,140 --> 00:03:00,630 Vol estàndard en? 60 00:03:00,630 --> 00:03:01,990 Doncs no, no ho vaig fer. 61 00:03:01,990 --> 00:03:06,700 Vaig cadena mitjana, però resulta que jo es va oblidar que la cadena no existeix com un 62 00:03:06,700 --> 00:03:10,830 tipus de dades tècnicament en C. Conceptualment existeix, però la paraula 63 00:03:10,830 --> 00:03:16,210 "Cadena" només existeix perquè el CS50 el personal ha declarat que, per dir-ho, 64 00:03:16,210 --> 00:03:18,160 en un arxiu que nosaltres mateixos escrivim. 65 00:03:18,160 --> 00:03:22,540 De fet, igual que algú fa molt temps declarada la funció printf en un fitxer 66 00:03:22,540 --> 00:03:28,310 anomenada estàndard IO.H, ho vam fer nosaltres el personal declaren cadena com un tipus de dades en 67 00:03:28,310 --> 00:03:32,470 un arxiu que, no és d'estranyar, es diu CS50.H. 68 00:03:32,470 --> 00:03:36,340 >> Així que anem a tornar a la part superior del meu programar i informar al compilador que 69 00:03:36,340 --> 00:03:40,130 no només és el que vull utilitzar el símbol cadena, també vull educar la 70 00:03:40,130 --> 00:03:42,160 compilador del que significa aquest símbol. 71 00:03:42,160 --> 00:03:47,010 I per fer això, senzillament, no puc anar una còpia de seguretat a la línia un, inserir una nova línia 72 00:03:47,010 --> 00:03:54,070 aquí, i afegeix, "inclouen CS50.H" també entre parèntesis angulars. 73 00:03:54,070 --> 00:03:58,170 Aquesta instrucció, igual que ara en la línia dos, va a informar la 74 00:03:58,170 --> 00:04:02,460 compilador que ha d'incloure la contingut de CS50.H on siguin 75 00:04:02,460 --> 00:04:06,620 en el meu disc dur a l'interior del meu programa, l'educació d'aquesta manera el compilador com a 76 00:04:06,620 --> 00:04:09,050 el que s'entén per cadena. 77 00:04:09,050 --> 00:04:13,420 >> Anem a tornar a compilar el meu programa després de guardar els canvis. 78 00:04:13,420 --> 00:04:15,500 Fer hola un. 79 00:04:15,500 --> 00:04:16,440 Intro. 80 00:04:16,440 --> 00:04:17,730 Molt millor. 81 00:04:17,730 --> 00:04:23,760 Ara tinc un missatge parpellejant en la qual pot escriure, ". / un hola", i voila. 82 00:04:23,760 --> 00:04:25,010 Hola David. 83 00:04:25,010 --> 00:04:26,402