sistem_programlaşdırma

C\C++ dillərində int main(argc,char* argv[]) şəklində yazırıq.bəs nəyə görə argv[] arrayini pointer olaraq qeyd edirik. onsuzda array öz-özlüyündə pointerdə niyə görə bu arqumenti pointer olaraq qeyd edirik?daha aydın desək bu cür də ifadə etmək olar int main(argc,char **argv). bu şəkildə də yazmaq olar nəyə görə argv argumenti mütləq pointer tipində olmalıdır?

Verilmiş cavablar və yazılan şərhlər (3 cavab var)

dragon_700 (2012-10-07 18:10:05)
Sualimi cavablandirdiginiz ucun tesekkur edirem

ahmed (2012-10-07 17:48:59)
Salam. Mən belə başa düşdüm ki, sizin sualınız argcargv arqumentlərinin məqsədləri yox, argv arqumentinin tipi ilə bağlıdır. argv -nin tipi char *[] və ya char ** kimi göstərili. Sizin sualınız belədir ki, niyə char [] və ya char * tiplərindən istifadə olunmur. Bu iki tipin fərqini anlamağa çalışaq. Mən izahı daha başadüşülən olsun deyə int tipi üzərindən verəcəm, char tipi də analojidir. int tipindən hər-hansı bir x dəyişəni elan edək: [code] int x;[/code] indi isə int tipindən hər-hansı p adlı göstərici elan edək: [code] int *p;[/code] indi int tipindən 10 elementdən ibarət y adlı array elan edək: [code]int y[10];[/code] Göstəricilər ilə arrayin əlaqəsini nəzərə alıb deyə bilərik ki, y -in tipi ilə p -nin tipi eynidir yəni int * İndi isə sizin üçün əhəmiyyətli məqam, int tipindən olan 10 göstərici saxlayan hər-hansı z arrayi elan edək: [code] int * z[10];[/code] Burada da arraylərlə göstəricilərin əlaqəsini nəzərə alsaq z arrayinin tipini int ** kimi yaza bilərik, yəni göstərici tipli göstərici. Bu göstəricilərlə bağlı ən çətin hissələrdən biridir. Qayıdaq sizin suala. char *s; hər-hansı sətirdir, başqa sözlə simvollar arrayi. argv isə səritlər arrayi dir. Buna görə yazırıq char * argv[]; arraylərin göstəricilərlə əlaqəsin nəzərə alıb bunu char **argv kimi də yaza bilərik.

Onar Alili (2012-10-07 12:32:19)
Burda izah olunub.

Mövzu üzrə bənzər suallara da baxa bilərsiniz.

Proqramçılığın istiqamətlərindən hansı daha perspektivlidir?

Proqramlaşdırma haqqında

Artıq əməliyyat sistemlərini silmək

windows 8.1 boot

Belə bir kurs işi mövzusu var. Kömək edin zəhmət olmasa

Oyun üçün proqramlaşdırma dili