26 lines
605 B
C
26 lines
605 B
C
|
#include <stdio.h>
|
||
|
#include <stdlib.h>
|
||
|
void print(int *i) {
|
||
|
printf("The location of i: %p\n", i);
|
||
|
int *k = (int *)malloc(sizeof(int));
|
||
|
printf("The location of k: %p\n", k);
|
||
|
}
|
||
|
|
||
|
int main() {
|
||
|
int *i = malloc(sizeof(int));
|
||
|
*i = 100;
|
||
|
printf("The first variable on the heap: %p\n", i);
|
||
|
int *ptr;
|
||
|
{
|
||
|
int *j = malloc(sizeof(int));
|
||
|
ptr = j;
|
||
|
*j = 200;
|
||
|
printf("The first location of j: %p\n", j);
|
||
|
}
|
||
|
printf("The value of j out of its scope: %d\n", *ptr);
|
||
|
printf("The new location of j: %p\n", ptr);
|
||
|
|
||
|
print(i);
|
||
|
}
|
||
|
|