Программалау оқулық Алматы, 012 Қазақстан Республикасы Білім жəне ғылым министрлігінің «Оқулық»


unsigned char* pchar = (unsigned char *) &A



Pdf көрінісі
бет51/465
Дата09.01.2023
өлшемі3,66 Mb.
#60709
түріПрограмма
1   ...   47   48   49   50   51   52   53   54   ...   465
unsigned char* pchar = (unsigned char *) &A;
printf(" | %x | %x | %x |", A, *pint, *pchar);
return 0; 
}
оның экранға шығарылатын нəтижесі:
| cc77ffaa | ffaa | аа |
pint
жəне 
pchar
нұсқауыштарының мəндерi бiрдей, бірақ адрессіздендіру 
нəтижесінде 
pchar
осы адрес бойынша бір кіші байтты, ал 
pint
екі кіші 
байтты береді. 
Жоғарыда келтірілген мысалда нұсқауыштарды инициалдау кезінде тип-
терді түрлендіру операциясы қолданылған. Типтерді айқын түрде түрлендіру 
операциясының синтаксисi қарапайым: керекті тип айнымалы атының алдын-
да жақша ішінде көрсетiледi. Мұндайда ақпараттардың осы күйде сақталуына 
кепiлдiк берiлмейдi, сондықтан типтерді осындай айқын түрдегі түрлендіру-
лерді қолданбаған жөн. Бұл туралы толығырақ мəлімет 249 б. келтірілген.
Бір өрнекте əртүрлі типтегі нұсқауыштарды араластыра қолданған кез-
де, 
void*
типінен басқа, барлық нұсқауыштардың типтерін айқын түрде 


55
түрлендіру қажет етіледі. Нұсқауыш айқын түрде көрсетілмей-ақ, 
bool
типті 
мəнге түрлендірілуі мүмкін (мысалы, шартты оператор өрнегінде), мұндайда 
нөлге тең болмайтын нұсқауыш 
true
мəніне, ал нөлге тең нұсқауыш 
false
мəніне ие болады.
Айқын түрдегі түрлендірусіз орындалатын меншіктеу операциясы төменде 
көрсетілген екі жағдайда мүмкін болады:
void*
типті нұсқауыштар үшін;
□ егер меншіктеу операциясының сол жəне оң жақтарындағы нұсқауыш-
тардың типтері бірдей болса.
Осылайша, айқын түрде көрсетілмеген түрлендіру тек 
void*
типі 
үшін орындалады. 0 мəні айқын емес түрде кез келген тип нұсқауышына 
түрлендіріледі. Объектілерге нұсқауыштарды функцияларға нұсқауыштарға 
(жəне керiсiнше) меншіктеу мүмкін емес. Кез келген типтегі нұсқауыш-
тұрақтыларға жəне кез келген типтегі тұрақтыларға да мəн меншіктеуге тый-
ым салынған (тұрақтыларға нұсқауыштарға жəне нұсқауыш-тұрақты сілтеме 
жасайтын айнымалыларға мəн меншіктеуге рұқсат етілген).


Достарыңызбен бөлісу:
1   ...   47   48   49   50   51   52   53   54   ...   465




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет