Göstəricilər bir sıra ilə C bir sıra üçün göstərici arasında fərq varmı?


cavab 1:

6 cavabdan yalnız biri C-də bir sıra göstəricinin nəyə bənzədiyini göstərir, başqa birini əlavə edirəm:

Array göstərici başqa bir şeyə işarə edən göstəriciləri ehtiva edən bir sıra:

# daxil edin int əsas (etibarsız) {int a = 1, b = 2, c = 3, d = 4; int * ap [4] = {& a, & b, & c, & d}; // nişanların massivi int // üçün (int i = 0; i! = 4; ++ i) printf ("% d", * ap [i]); }

Demo: [divar qutusu] 三 三 (へ へ ਊ ਊ) へ へ ハ ッ ハ

Bir sıra göstərici başqa bir şey olan bir sıra göstərir ki, bir göstərici:

# daxil edin int əsas (etibarsız) {int a [4] = {1,2,3,4}; int (* pa) [4] =? // (int i = 0; i! = 4; ++ i) printf ("% d", (* pa) [i]) üçün dörd ints sıra göstərici; }

Demo: [divar qutusu] 三 三 (へ へ ਊ ਊ) へ へ ハ ッ ハ

Bir sıra işaretçiyə bir göstərici də edə bilərsiniz:

int a = 1, b = 2, c = 3, d = 4; int * ap [4] = {& a, & b, & c, & d}; // göstəricilər silsiləsi int * (* pap) [4] = & ap; // göstərişlər bir sıra göstərici

və seriallar üçün bir sıra:

int a [3] = {1,2,3}, b [3] = {4,5,6}, c [3] = {7,8,9}; int (* apa [3]) [3] = {& a, & b, & c}; // seriallara göstərişlər silsiləsi

və göstərici göstərmək üçün göstərici

int a [4] = {1,2,3,4}; int (* pa) [4] =? // dörd int int (** ppa) [4] = & pa; // göstərici dörd ints sıra

Göstəricilər sırası

int a = 1, b = 2, c = 3, d = 4; int * aap [2] [2] = {{& a, & b}, {& c, & d}}; // göstərici massivinin massivi

və s. "sıra" və "göstərici" müddətsiz bir yerə yığıla bilər.


cavab 2:

Fərq var.

Serialdan başlayaq.

Bir sıra elan edildikdə, yalnız serialın əsas ünvanını tapırıq.

int a [10];

Burada 'a' serialın başlanğıc ünvanı var.

Bəli, bir göstərici, daha doğrusu, bir işarədir [0].

İndi göstərəni bir sıra göstərək.

Əsasən, bir sıra bir göstərici edirsiniz.

int a [10]; int * p; p = a; // və ya p = & a [0];

Burada p .it faylına işarə edir. Bu, p ilə bir elementə daxil ola biləcəyiniz deməkdir.

int i; int a [5] = {1, 2, 3, 4, 5}; int * p = a; // kimi int * p = & a [0] for (i = 0; i <5; i ++) {printf ("% d", * p); p ++;}

Bu əsasən bir sıra elementlərini yazdırır.

İndi işaretçiler sırası. Bir az daha mürəkkəbdir.

Göstəricilər olan bir sıra elementlərdir.

Serialdakı hər bir elementin fərqli bir yerə işarə etməsi deməkdir.

Bir nümunə.

char * name [3] = {"Adam", "chris", "Deniel"

};


cavab 3:

C-də, göstərici Java kimi daha yüksək bir dildə yaddaş istinadına bənzəyir. Beləliklə, daha yüksək dildə bir sıra yaddaş istinadlarına bənzəyən bir sıra göstəricilər barədə düşünə bilərsiniz.

C-də bir serial yalnız bitişik bir yaddaş blokudur. Beləliklə, bir sıra göstərici sadəcə serialın baza ünvanına göstərici və ya serialın daha yüksək bir dildə olan indeksinə bir yaddaş istinadı olacaqdır (əsas ünvandan başlamağı düşünürsünüz).


cavab 4:

C-də, göstərici Java kimi daha yüksək bir dildə yaddaş istinadına bənzəyir. Beləliklə, daha yüksək dildə bir sıra yaddaş istinadlarına bənzəyən bir sıra göstəricilər barədə düşünə bilərsiniz.

C-də bir serial yalnız bitişik bir yaddaş blokudur. Beləliklə, bir sıra göstərici sadəcə serialın baza ünvanına göstərici və ya serialın daha yüksək bir dildə olan indeksinə bir yaddaş istinadı olacaqdır (əsas ünvandan başlamağı düşünürsünüz).


cavab 5:

C-də, göstərici Java kimi daha yüksək bir dildə yaddaş istinadına bənzəyir. Beləliklə, daha yüksək dildə bir sıra yaddaş istinadlarına bənzəyən bir sıra göstəricilər barədə düşünə bilərsiniz.

C-də bir serial yalnız bitişik bir yaddaş blokudur. Beləliklə, bir sıra göstərici sadəcə serialın baza ünvanına göstərici və ya serialın daha yüksək bir dildə olan indeksinə bir yaddaş istinadı olacaqdır (əsas ünvandan başlamağı düşünürsünüz).


cavab 6:

C-də, göstərici Java kimi daha yüksək bir dildə yaddaş istinadına bənzəyir. Beləliklə, daha yüksək dildə bir sıra yaddaş istinadlarına bənzəyən bir sıra göstəricilər barədə düşünə bilərsiniz.

C-də bir serial yalnız bitişik bir yaddaş blokudur. Beləliklə, bir sıra göstərici sadəcə serialın baza ünvanına göstərici və ya serialın daha yüksək bir dildə olan indeksinə bir yaddaş istinadı olacaqdır (əsas ünvandan başlamağı düşünürsünüz).