|
Kompyuter tizimlari kafedrasi
|
bet | 21/154 | Sana | 08.01.2024 | Hajmi | 5,29 Mb. | | #131939 |
Bog'liq MajmuaSimvolli literal: C# Unicode kodlar sistemasidagi belgilarni qo‘llab-quvvatlaydi. Faqatgina bitta simvolni ifodalash uchun ishlatiladi va har doim ikki tomonida apostrof bo‘ladi: 'simvol'.
Simvol sifatida quyidagilar bo‘lishi mumkin:
\(U+0027), \(U+005C) va yangi satr simvolidan tashqari har qanday simvol;
oddiy o‘tish ketma-ketligi (simply escape sequence). U quyidagilardan biri bo‘lishi mumkin: \', \", \\, \0, \a, \b, \f, \n, \r, \t, \v;
16 lik sanoq sistemasidagi o‘tish ketma-ketligi (hexa decimal escape sequence). Uning ko‘rinishi: \x to‘rtta 16 lik sanoq sistemasidagi raqam, teskari slesh(\) simvolidan keyin kelgan simvol quyidagilardan biri bo‘lishi mumkin: ', ", \, 0, a, b, f, n, r, t, u, U, x, v. Boshqa holda kompilyator xatolik haqida xabar beradi. 16 lik sanoq sistemasidagi o‘tish ketma-ketligi bitta Unicode simvolini ifodalaydi va uning qiymati (\x) dan keyin yoziladi. Agar simvolli literal qiymati U+FFFF dan oshib ketsa, kompilyator xatolik ko‘rsatadi;
Unicode simvoli - simvolli literalda U+0000 dan U+FFFF gacha oraliqda bo‘lishi kerak.
Oddiy o‘tish ketma-ketligi simvolining Unicode jadvalidagi ko‘rinishi quyidagi jadvalda keltirilgan:
2.2.2-jadval. O‘tish ketma-ketligi simvolining Unicodedagi ko‘rinishi.
Belgilar
|
Belgi nomi
|
Unicode kodi
|
\'
|
Apostrof
|
0x0027
|
\"
|
Qo‘shtirnoq
|
0x0022
|
\\
|
Teskari slesh
|
0x005C
|
\0
|
Null (bo‘sh qiymat)
|
0x0000
|
\a
|
Alert
|
0x0007
|
\b
|
Backspace
|
0x0008
|
\f
|
Form feed
|
0x000C
|
\n
|
Yangi qator
|
0x000A
|
\r
|
Carriage return
|
0x000D
|
\t
|
Gorizontal tabulyatsiya
|
0x0009
|
\v
|
Vertikal tabulyatsiya
|
0x000B
|
Bitta simvolni turli ko‘rinishda ifodalash mumkin: M: 'Z'='\х5А'. Simvolli literal turi char hisoblanadi.
C# da satrli literallar ikki xil shaklga ega: doimiy satrli literallar (regular string literal) va so‘zma-so‘z satrli literal (verbatim string literal).
Doimiy satrli literal bo‘sh yoki bir necha simvollardan (\(U+0022), \(U+005C) va yangi satr simvollaridan tashqari) iborat bo‘ladi va qo‘shtirnoq bilan chegaralangan bo‘ladi. U yana oddiy o‘tish ketma-ketligi (tab simvoli \t kabilarni) simvolini, 16 lik sanoq sistemasidagi va Unicode o‘tish ketma-ketligi simvolini o‘z ichiga olishi mumkin.
So‘zma-so‘z satrli literallar qo‘shtirnoq, undan keyin mos ravishda @ simvoli, bo‘sh yoki simvollar ketma-ketligi, yopuvchi qo‘shtirnoqdan iborat. Bunda oddiy o‘tish ketma-ketligi simvoli, 16 lik sanoq sistemasi va Unicode o‘tish ketma-ketligi simvoli ishlatilmaydi. So‘zma-so‘z satrli literallar bir nechta qatorda joylashishi mumkin. Teskari slesh (\) simvolidan keyin kelgan simvol quyidagilardan biri bo‘lishi mumkin: ', ", \, 0, a, b, f, n, r, t, u, U, x, v. Boshqa holda kompilyator xatolik haqida xabar beradi. Turli ko‘rinishdagi satrli literallarga misol:
string a = "Dastur"; // Dastur
string b = @"Dastur"; // Dastur
string c = "C# \t tili"; // Dasturlash asoslari
string d = @"C# \t tili"; // C# \t tili
string e = "Men \"dasturchiman\""; // Men "dasturchiman"
string f = @"Men ""dasturchiman"""; // Men "dasturchiman"
string g = "\\Dastur\\masala1.cs"; // \Dastur \masala1.cs
string h = @"Dastur\ masala1.cs"; // Dastur \masala1.cs
string i = "bir\r\nikki\r\nuch";
string j = @"bir ikki uch";
Sartrli literal "\x123" 16 lik sanoq sistemasidagi 123 ga mos keladigan simvolni ifodalaydi. 16 lik sanoq sistemasidagi 12 ga mos simvol va undan keyin kelgan 3 simvolini o‘z ichiga olgan satrni hosil qilish uchun "\x00123" yoki "\x12" + "3" yozish kerak.
Satrli literal turi string hisoblanadi.
|
| |