>> СПІКЕР: Давайце напішам праграму, якая запытвае ў карыстальніка двух радкоў і
затым паведамляе, ці з'яўляецца гэтыя радкі аднолькавыя або не аднолькавыя.
Я ўжо пачаў нас тут называючы Printf двойчы і выкліку
GetString двойчы, захоўвання вяртанне Значэння ў с і т, адпаведна.
>> Цяпер, мае інстынкты, каб параўнаць гэтыя два Радкі будзе выкарыстоўваць знаёмыя
Аператар роўнасці -
калі з роўна роўная т.
Тады я буду ісці наперад і друк з "Вы ўвялі тое ж самае!
У адваротным выпадку, калі гэта не так, я проста збіраецца ўвесці Е ("Вы ўвялі
розныя рэчы!
>> Даволі проста -
Я проста параўноўваючы сек супраць т, і калі яны роўныя,
Раздрукаваўшы столькі ж.
Давайце скампіляваць і запусціць гэтую праграму.
Зрабіць параўнаць 0. / Параўнаць 0, нешта сказаць, прывітанне,
нешта сказаць, прывітанне.
>> На жаль, праграма думае, што я набралі розныя рэчы, хоць я
выразна набраў "прывітанне" Сапраўды гэтак жа абодва разы.
Цяпер, чаму гэта можа быць?
>> Ну, атрымліваецца, што ўсё гэта Час, радкі, быў трохі больш
складаней, чым паслядоўнасць знакаў пад капотам.
На самай справе, гэта радок з'яўляецца паказальнікам або адрас, у прыватнасці, адрас
першага знака ў тым, што паслядоўнасць знакаў.
>> І таму, калі мы параўноўваем сек супраць т з роўным знака роўнасці, мы
на самай справе просяць, гэта адрас роўная роўная гэтым адрасе?
І, што не збіраецца быць у выпадку, калі карыстач увёў у двух розных
Радкі і мы назвалі GetString двойчы каб атрымаць іх, таму што памяць
што GetString выкарыстоўвае для захоўвання першым радок можа быць тут, у памяці, але
памяці, што GetString выкарыстоўвае для захоўвання другая радок будзе
быць тут, у аператыўнай памяці.
І вядома, то, гэтыя два кавалкі памяці маюць розныя адрасы для
іх самыя першыя сімвалы.
>> Так з роўнымі роўная т?
Ну, няма.
Калі з і т паказваюць на розныя кавалкі памяці, як яны былі б на
называючы GetString двойчы, гэта не так, на самай справе, будзе тое ж самае.
Так што, падобна, мае месца, што ў параўнаць два радкі ў інтуітыўны
спосаб, якім мы чакаем, характар ​​для характар, нам патрэбен іншы метад
ў цэлым.