Output address and value
#include <stdio.h>
int main(void)
{
int number = 0;
int *pointer = NULL;
number = 10;
printf("\nnumber"s address: %p", &number); /* Output the address */
printf("\nnumber"s value: %d\n\n", number); /* Output the value */
return 0;
}
number"s address: 9a378
number"s value: 10
Using the & operator
#include<stdio.h>
int main(void)
{
long a = 1L;
long b = 2L;
long c = 3L;
double d = 4.0;
double e = 5.0;
double f = 6.0;
printf("A variable of type long occupies %d bytes.", sizeof(long));
printf("\nHere are the addresses of some variables of type long:");
printf("\nThe address of a is: %p The address of b is: %p", &a, &b);
printf("\nThe address of c is: %p", &c);
printf("\n\nA variable of type double occupies %d bytes.", sizeof(double));
printf("\nHere are the addresses of some variables of type double:");
printf("\nThe address of d is: %p The address of e is: %p", &d, &e);
printf("\nThe address of f is: %p\n", &f);
return 0;
}
A variable of type long occupies 4 bytes.
Here are the addresses of some variables of type long:
The address of a is: 9a57c The address of b is: 9a578
The address of c is: 9a574
A variable of type double occupies 8 bytes.
Here are the addresses of some variables of type double:
The address of d is: 9a568 The address of e is: 9a560
The address of f is: 9a558