C Tutorial/Language/Variable Address

Материал из C\C++ эксперт
Перейти к: навигация, поиск

Output address and value

<source lang="cpp">#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;

}</source>

number"s address: 9a378
     number"s value: 10

Using the & operator

<source lang="cpp">#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;

}</source>

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