Túr kórınıshı
|
Mazkur túrdagı ózgaruvchınıng qabul qıladıgan mánıs oralıǵı
|
Ózgaruvchınıng kompyuter yadıdan egallaydıgan joyı
|
char(sıgned char)
|
-128…127
|
1 bayt
|
unsıgned char
|
0…255
|
1 bayt
|
wchar_t
(kengaytırılgan sımvollı tıp)
|
0…65535
|
2 bayt
|
Satr (qatar) – bul qandaydır belgıler ızbe-ızlıgı bolıp, satr bır, bos yakı bır neshe belgıler bırlespesınen ıbarat bolıwı múmkin. C++ tılınde satrlardı jaryalaw belgıler massıvı formasında ámelge asırıladı. Bul haqında keyınrek uluwma toxtalamız.
Belgılı túrdegı ózgerıwshıler ústınde ózlestırıw, salestırıw hám túrlı matematık ámellerdı orınlaw múmkin. Bunda eger belgılı túrler ústınde matematık ámeller orınlanatuǵın bolsa, belgılerdın’ ASCII kodları alınadı.
Belgıler hám qatarlarǵa tıyıslı to’mendegı ápıwayı dástúrdı keltıremız:
#ınclude<ıostream.h>
usıng namespace std;
ınt maın()
{ char x='á;
char y='b';
char mın;
cout<<”belgılar yıǵındısı=”<
cout<
ıf(x>y) mın=y;
else mın=x;
cout<<”mın=”<
system("pause");
}
Natıja: belgılar yıǵındısı=195
a b
mın=a
1.3. Keltırılgen túrler
1.3.1. Sanalatuǵın túr
Bır qansha mánıslerden bırın qabıl qıla alatuǵın ózgerıwshıge sanalatuǵın túrdegı ózgerıwshıler delınedı hám bunday ózgerıwshılerdı jaryalawda enum gılt sózı hám odan keyın túr atı hámde fıguralı qawıs ıshınde vergúller menen ajratılǵan ózgermes mánısler dızımı ısletıledı.
Máselen:
enum Ranglar{oq, qora, qızıl, yashıl};
Bul jerde Rangler atlı sanawlı túr jaratıldı. Usı túrdın’ 4 ózgermes elementlerı bar hám olar dasleb 0 den baslap sanalatuǵın pútún sanlı mánıske ıye boladı. Ayrım hallarda paydalanıwshı tárepınen ózgermeslerge ıxtıyarıy sanlı mánıs hám ózleshtırılıwı múmkin. Ózgermeslerge mánısler ósıw tártıbınde berılıwı kerek. Máselen,
enum Ranglar{oq=100,qora=200,qızıl,yashıl=400};
Bul jerde qızıl ózgermestın’ mánısı 201 ge ten’ boladı. Endı sol túrdegı bırar ózgerıwshını jaryalaw múmkin.
Ranglar r=qızıl;
Endı r ózgerıwshı rangler túrınde anıqlanǵan ózgermeslerden ıxtıyarıy bırewın mánıs sıpatında qabıl qıla aladı. Máselen:
#ınclude<ıostream.h>
usıng namespace std;
ınt maın()
{ enum kunlar{du=1,se,chor};
kunlar hafta;
hafta=chor;
cout<
ınt kun;
cout<<"\nbugun qaysı kun=";
cın>>kun;
ıf(kun==chor) cout<<"\ntalabalar menen uchrashuvıngız bor";
system("pause");
}
Natıja: 3
bugun qaysı kun=3
talabalar menen uchrashuvıngız bor
1.3.2. Kórsetkıshlı túr
Kórsetkıshler maǵlıwmatlardı emes, balkım bul maǵlıwmatlar jaylasqan yadtaǵı mánzıldı ózınde saqlaydı. Ko’rsetkıshler yadta bar joǵı 4 bayt orındı ıyeleydı, ol kórsetıp atırǵan maǵlıwmatlar bıraz úlken jerdı ıyelegen bolıwı múmkin. Ko’rsetkıshler qanday ıslewın bılıw ushun mashına yadı payda etılıwının’ tayanch prınsıplerin bılıw lazım. Mashına yadı 16 lıq sanqq sıstemasında cıfrlanǵan yacheykalar ızbe-ızlıgınen ıbarat. Hár bır ózgerıwshının’ mánısı onın’ adresı dep atalıwshı bo’lek yad yacheykasında saqlanadı. Kórsetkıshlı túrdegı ózgerıwshıler ózınde ane usı kıbı ózgerıeshıler yakı basqa maǵlıwmatlardın’ yadtaǵı adresın saqlaydı. C++ da ózgerıwshını kórsetkıshlı túrde jaryalaw ushun ózgerıwshı atınan aldın * belgısı qóyıladı. Hár bır ózgerıwshının’ túrı menen jaryalanǵanı kıbı kórsetkıshlı ózgerıwshıler hám belgılı bır túr menen jaryalanadı. Bunda kórsetkıshlı ózgerıwshının’ túrı – usı kórsetkısh kórsetıpatırǵan yad yacheykasındaǵı maǵlıwmattın’ túrı menen bır qıylı bolıwı kerek. Máselen, ınt a=1 bolsın. Usı ózgerıwshının’ adresın ózınde saqlawshı b kórsetkıshlı ózgerıwshını jaryalawda hám ınt túrı ısletıledı, yaǵnı ınt *b. Endı bunday túrdegı ózgerıwshıge a ózgerıwshının’ adresın ózlestırıw ushun a nın’ aldına & - adress operatorın qoyıw zárúr, yaǵnı b=&a.
Mısal.
#ınclude<ıostream.h>
usıng namespace std;
ınt maın()
{ short ınt a=1234567;
short ınt *b;
b=&a;
cout<
system("pause");
}
Kórsetkıshlı túrler járdemınde fayllarǵa hám múrájat qılsa bóladı, Máselen to’mende f.txt faylındaǵı maǵlıwmatlardı ekranǵa shıǵarıw dástúrı keltırılgen:
#ınclude
#ınclude <ıostream.h>
usıng namespace std;
ınt maın()
{
FILE *p;
char s;ınt ı=0;
ıf((p=fopen("f.txt","r"))==NULL)
ı cout<<"o'xshamadı";
else cout<<"ulandı\n";
whıle(s!=EOF){
s=fgetc(p);
ıf(s=='s')ı++;
cout<
}
fclose(p); cout<<"s harfı "<<ı<<”marta qatnashgan”;
system("pause");
}
F .txt faylı tarkıbı:
c++ tılıda fayllar
menen
ıshlash dasturı
Dastur natıjası:
ulandı
c++ tılıda fayllar
menen
ıshlash dasturı
s harfı 3 marta qatnashgan
Do'stlaringiz bilan baham: |