Ik kreeg vanochtend wat code te zien waarbij ik iets zag waarvan ik niet kan snappen dat het werkt.
Zie het volgende stukje code:
Dit stukje code werkt perfect.
Ik meende toch echt dat regel 8 er zo uit moest zien:
Kan iemand mij uitleggen waarom de pointer niet de waarde 1 krijgt?
Ik heb dit met gcc getest.
Zie het volgende stukje code:
C:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| #include <stdio.h> int main() { int foo[][2] = {{1, 2}, {3, 4}}; int *p; p = *foo; printf("%p\n%p\n", foo, p); printf("%i, %i", p[0], p[1]); return 0; } |
Dit stukje code werkt perfect.
Ik meende toch echt dat regel 8 er zo uit moest zien:
C:
1
| p = (int *)foo; |
Kan iemand mij uitleggen waarom de pointer niet de waarde 1 krijgt?
Ik heb dit met gcc getest.