C/C++

, . . .

 *_

:

&
*

.

int x=10;
int *p, *g;	// 
p = &x;	//   x
g = p;	//        x
cout << *g;	//   x

C . .

int **point;
---> --->
, : **point.

, , . , . , , : "Null pointer assignement".

, , null 0.

, . .

int *p, x;
p = &x;
p++;	//     p
p 1, 2, .. x int. .. , .

. p < g p g

: p = p+n*_____, p , n , .

, , , , .

float int;
int *p;
p = (int*)&x;
. , . , , (float = 4 , int = 2 ).

void

void, void. void . void.

void *pv;
float f, *pf;
pf = &f;
pv = pf;
pf = (float*)pv;

C . , , .. . .

int plus[10];
plus , . .
p = plus;
p = &plus[0];

, , . , , 6- , .

plus[5];
*(plus+5);

, , new, .

int *a = new int[N];
if (a == 0) {cout << "out of memory" << endl; return 0;}
, .
int **malloc2d (int r, int c){
	int **t= new int*[r];
	for (int i = 0; i < r; i++)
		t[i] = new int[c];
	return t;
}

int *a = malloc2d (M*N*sizeof(int));
. a[i][j].

C , char* ( char). , .

char *pc;
pc = "Hello world";

(0) , .

while (*str++) cout << str;






Много орфографических ошибок, а тема по указателям хорошо раскрыта, именно то, что я искал!

2012-06-19 08:15:24 Alex

Правим потихоньку...

2016-12-27 04:00:10 Андрей

В разделе "Строки и указатели", во втором блоке кода должно быть: while (*pc) cout

2016-12-27 04:04:42 Андрей

Во втором блоке кода должно быть: while (*pc) cout

2016-12-27 04:11:02 Андрей

Во втором блоке кода должно быть: while (*pc) cout [две левые угловые скобки, они же стрелки влево] *pc++; Две левые угловые скобки, они же стрелки влево, и всё, что после них кто то "съедает".




Оставить комментарий:
Ваше Имя:
Email:
Антибот: *  
Ваш комментарий: