Professional Documents
Culture Documents
AP-03-Advanced Pointers-English
AP-03-Advanced Pointers-English
p = &x; 96 97 98 99
q = &p; q 44 0 0 0
foo(
foo(q, r);
r);
}
void printBytes
printBytes((void *p, *p, int size) void main
main()
()
{ {
char *q = ( unsigned char * ) p; int x = 1057;
for ( int i = 0; i < size; i++ ) double y = 1.25;
printf(( “%d “, q[ i ] );
printf
printBytes(&x, 4);
printBytes(&x,
}
printBytes(&y,
printBytes (&y, 8);
}
p+1 *(p + 1) + 1
void printMatrix
printMatrix((int a[ ][20],
][20], int rows, int cols) { // pass &a[ 0 ].
for (int
(int i = 0; i < rows; i++) {
for (int
(int j = 0; j < cols; j++)
printf(“%d
printf (“%d “, a[ i ][ j ] );
printf(“
printf (“\\n”);
}
}
void main
main() () {
int a[10][20];
printMatrix((a, 10, 20);
printMatrix
}
Pointer to fix-
fix-sized memory stores address of
static array.