|
Izoh: lname parametrga qiymat yuklamasa ham bo'ladi. Yuklanmasa uning standart nomi sifatida (ya'ni qiymati sifatida) lname="Sherkulov"
|
bet | 17/19 | Sana | 17.02.2024 | Hajmi | 88,92 Kb. | | #158115 |
Bog'liq C da massivlar bilan ishlash-fayllar.orgIzoh: lname parametrga qiymat yuklamasa ham bo'ladi. Yuklanmasa uning standart nomi sifatida (ya'ni qiymati sifatida) lname="Sherkulov" nomi qabul qilinadi.
Bir nechta parametrlar.
Funktsiya ichida siz xohlagancha ko'p parametrlarni qo'shishingiz mumkin:
#include
#include
using namespace std;
void myFunction(string fname, int age) {
cout << fname << " Sherkulov. " << age << " yoshda. \n";
}
int main() {
myFunction("Mister", 13);
myFunction("Master", 14);
myFunction("Farrukh", 30);
return 0; }
Mister Sherkulov 13 yoshda
Master Sherkulov 14 yoshda
Farrukh Sherkulov 30 yoshda
E'tibor bering, bir nechta parametrlar bilan ishlaganda, funktsiyani chaqirish parametrlari bo'lgani kabi bir xil argumentlarga ega bo'lishi kerak va tiplari bir xil tartibda o'tkazilishi kerak.
Qiymat qaytarish.
voidOldingi misollarda ishlatiladigan kalit so'z, vazifasi qiymat qaytarilmaydigan funksiyalar oldidan qo'llaniladi. Agar qiymat qaytaradi vazifasi bo'lsangiz, siz void bir ma'lumot turini (masalan, foydalanish mumkin int, stringva boshqalar) , va ishlatish return funktsiyasi ichki kalit so'zni.
#include
using namespace std;
int myFunction(int x) {
return 5 + x; }
int main() {
cout << myFunction(3);
return 0; }
Endi ikkita parametrli funktsiyaning yig'indisini hisoblash funksiyasi.
#include
using namespace std;
int myFunction(int x, int y) {
return x + y; }
int main() { cout << myFunction(5, 3);
return 0; }
Siz shuningdek natijani o'zgaruvchiga saqlashingiz mumkin.
#include
using namespace std;
int myFunction(int x, int y) {
return x + y;}
int main() {
int z = myFunction(5, 3);
cout << z;
return 0;
}
Funksiyaga massivlarni berganimizda, eng katta muammo bu qanday qilib massivdagi elementlari sonini berishdir. Eng yaxshi usul bu massiv kattaligini qo'shimcha kirish parametri orqali funksiyaga bildirishdir. Bundan tashqari, massiv hajmini global konstanta orqali e'lon qilishimiz mumkin. Lekin bu ma'lumotni ochib tashlaydi, global sohani ortiqcha narsalar bilan to'ldirib tashlaydi. Undan tashqari massiv hajmini funksiyaning o'ziga yozib qoyishimiz mumkin. Biroq bunda bizning funksiyamiz faqat bitta kattalikdagi massivlar bilan ishlaydigan bo'lib qoladi. Yani dasturimiz dimamizmni yo'qotadi. Klaslar yordamida tuzilgan massivlar o'z hajmini biladi. Agar bunday ob'ektlarni qo'llasak, boshqa qo'shimcha parametrlarni qo'llashimizning keragi yo'q.
Funksiyalarga massivlar ko'rsatkich ko'rinishida beriladi. Buni C++, biz ko'rsatmagan bo'lsak ham, avtomatik ravishda bajaradi. Agar massivlar qiymat bo'yicha chaqirilganda edi, har bir massiv elementining nushasi olinishi kerak bo'lardi, bu esa dastur ishlash tezligiga salbiy ta'sir ko'rsatar edi.
foo(const char []);
Bunda funksiyaga kiradigan massiv funksiya tomonidan o'zgartirilmaydi. Agar o'zgartirishga urinishlar bo'lsa, kompilyator hato beradi. Massivlar va funksiyalarning birga ko'llanilishiga misol beraylik.
// Massiv argumentli funksiyalar
# include
const int arraySize = 10;
double ortalama(int m[], int size) {
double temp = 0;
for (int i = 0; i < size; i++) {
temp += m[i];}
return ( temp / size ); }
Xulosa:
C++ tilida parametrlar soni noma’lum bo4gan funksiyalami ham ishlatish mumkin. Bundan tashqari ulaming turlari ham noma’lum bo’lishi mumkin. Parametrlar soni va turi funksiyani chaqirish-dagi argumentlar soni va ulaming turiga qarab aniqlanadi
Ko‘p oMchamli massivlar bilan ishlash maMum bir murakkablikka ega, chunki massivlar xotiradajoylash tartibi turli variantda boMishi mumkin. Masalan, funksiya parametrlar ro‘yxatida n x n oMchamdagi haqiqiy turdagi x[n][n] massivga mos keluvchi parametmi float sum(float x[n][n])
ko‘rinishda yozib bo’lmaydi.
|
|
Bosh sahifa
Aloqalar
Bosh sahifa
Izoh: lname parametrga qiymat yuklamasa ham bo'ladi. Yuklanmasa uning standart nomi sifatida (ya'ni qiymati sifatida) lname="Sherkulov"
|