Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2014.09.28;
Скачать: CL | DM;

Вниз

Посимвольное сравнение   Найти похожие ветки 

 
Кунг-Фу Панда   (2014-02-19 15:48) [0]

Что-то меня переклинило
Символ "a" имеет байтовое представление $61
Символ "A" равен $41

Поэтому по байтовому сравнению конечно "a" больше, чем "A"
Попробовал в Delphi такой код:
procedure TForm1.Button1Click(Sender: TObject);
var
 S1, S2: string;
begin;
 S1 := "a";
 S2 := "A";

 if (S1 < S2) then Caption := "a < A"
 else Caption := "a > A";
end;


Показывает "a > A"
Но разве это логично?
Разве в посимвольном сравнении "a" не должно быть меньше, чем "A"?


 
Inovet ©   (2014-02-19 15:51) [1]

> [0] Кунг-Фу Панда   (19.02.14 15:48)
> Но разве это логично?

Да


 
Mystic ©   (2014-02-19 15:52) [2]


> Показывает "a > A"



> Символ "a" имеет байтовое представление $61
> Символ "A" равен $41


$61 >  $41


 
Inovet ©   (2014-02-19 15:53) [3]

Абаба должен быть впереди абаба.


 
ТНЕ картман   (2014-02-19 16:00) [4]

а я никак не могу запомнить, какие буквы прописные, а какие строчные((


 
Inovet ©   (2014-02-19 16:04) [5]

> [4] ТНЕ картман   (19.02.14 16:00)

Лучше заглавные и маленькие.


 
Стенка ©   (2014-02-19 16:30) [6]

> Кунг-Фу Панда   (19.02.14 15:48)  
> Но разве это логично?

Конечно, не логично.
Самый большой код должен быть у буквы "W".


 
Кунг-Фу Панда   (2014-02-19 16:35) [7]

> Inovet ©   (19.02.14 15:53) [3]
> Абаба должен быть впереди абаба.


я тоже к этому выводу пришёл


 
Dimka Maslov ©   (2014-02-19 18:20) [8]


> я тоже к этому выводу пришёл


Так вот, чтобы Абаба был впереди абаба "а" = #$61 должно быть больше чем "A" = #$41, потому-что сортировка по алфавиту это не что иное как сортировка по возрастанию от наименьшего элемента к большему. А что бы вообще делали в С++, где char и wchar_t по-умолчанию знаковые...


 
Rouse_ ©   (2014-02-19 19:46) [9]


> Показывает "a > A"
> Но разве это логично?
> Разве в посимвольном сравнении "a" не должно быть меньше,
>  чем "A"?

Цикл от 0 до 255 с приведением к AnsiChar сделай и выведи на экран.
Имея на руках эти данные сам поймешь логику сравнения.


 
clickmaker ©   (2014-02-19 19:48) [10]

> Лучше заглавные и маленькие.

большие и маленькие


 
Rouse_ ©   (2014-02-19 19:59) [11]


> clickmaker ©   (19.02.14 19:48) [10]
> большие и маленькие

Оффтоп, нтересно, а у китайцев есть прописные и строчные? :)


 
clickmaker ©   (2014-02-19 20:06) [12]

> [11] Rouse_ ©   (19.02.14 19:59)

не-а. У них все строчные, место же надо экономить


 
Anatoly Podgoretsky ©   (2014-02-19 20:21) [13]

Конечно же, ведь "A" занимает больше места, чем "a"


 
Inovet ©   (2014-02-19 20:53) [14]

> [8] Dimka Maslov ©   (19.02.14 18:20)
> А что бы вообще делали в С++, где char и wchar_t по-умолчанию знаковые...

Наступали на грабли, пока не вставляли unsigned.



Страницы: 1 вся ветка

Текущий архив: 2014.09.28;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.006 c
2-1382366626
Сергеев Ваня
2013-10-21 18:43
2014.09.28
Ошибка ChDir


15-1392713286
cpp_dev
2014-02-18 12:48
2014.09.28
Может ли кто-нибудь кинуть прямую ссылку на С++ компилятор


11-1253302734
histrio
2009-09-18 23:38
2014.09.28
Вирус


15-1392802705
ТНЕ картман
2014-02-19 13:38
2014.09.28
функциональное программирование


2-1382550259
Новичок
2013-10-23 21:44
2014.09.28
Преобразование типов