Como imprimir um endereço de uma variável na programação C?

Como imprimir um endereço de uma variável na programação C?
Quando definimos uma variável com qualquer tipo de dados, como int, dupla, flutuação ou char, o sistema operacional aloca alguma memória para a variável. Esta memória pode ter qualquer valor aleatório, mas não pode ser negativo. Esse valor aleatório é conhecido como endereço da variável e cada variável tem um endereço exclusivo.

Neste artigo, você entenderá como imprimir o endereço de uma variável na programação C.

Como imprimir o endereço de uma variável na programação C?

Temos dois métodos para imprimir o endereço de uma variável na programação C.

  • Usando o "endereço" (&) operador
  • Usando variável de ponteiro

Método 1: Imprima um endereço variável usando o operador "Endereço"

Para imprimir o endereço de uma variável usando o “Endereço do operador”, Podemos seguir as etapas abaixo:

Passo 1: Declare primeiro uma variável de qualquer tipo de dados e inicialize com um valor. O tipo de dados pode ser int, flutuar ou char.

Passo 2: Em seguida, use o "Endereço do operador" (&) seguido pelo nome da variável para obter seu endereço.

Etapa 3: Depois disso, armazene o endereço em uma variável de ponteiro do tipo “Ponteiro para o mesmo tipo de dados que a variável original”.

Passo 4: Em seguida, imprima o endereço usando a função printf ().

A seguir, é apresentada uma ilustração de um programa C que imprime um endereço variável usando o "Endereço do operador" (&).

#incluir
int main ()

int num1;
flutuar num2;
char c;
printf ("Por favor, insira um valor inteiro para imprimir seu endereço \ n");
scanf ("%d", & num1);
printf ("O número inserido é %d: \ n", num1);
printf ("endereço de %d é: %p \ n", num1 e num1);
printf ("Por favor, insira um valor de flutuação para imprimir seu endereço \ n");
scanf ("%f", & num2);
printf ("O número inserido é %f: \ n", num2);
printf ("endereço de %f é: %p \ n", num2 e num2);
printf ("Insira um personagem para imprimir seu endereço \ n");
scanf ("%c", & c);
getchar ();
printf ("O endereço do caractere é: %p \ n", & c);
retornar 0;

O programa acima leva ao usuário a inserir um número inteiro, um bóia e um personagem, então imprime seus valores e endereços de memória usando o "Endereço do operador" (&) e a função printf () da biblioteca de entrada/saída padrão. Ele também usa a função scanf () para ler a entrada do usuário e a getchar () Função para consumir o caractere de nova linha deixado no buffer de entrada por scanf ().

Método 2: Imprima um endereço variável usando ponteiro

Para imprimir o endereço de uma variável usando um ponteiro, podemos seguir estas etapas:

Passo 1: Declare uma variável de qualquer tipo de dados (e.g., int, flutuar, char) e inicialize com um valor.

Passo 2: Declare uma variável de ponteiro do mesmo tipo de dados que a variável original, usando o operador Asterisk (*).

Etapa 3: Atribua o endereço da variável original à variável de ponteiro usando o "endereço do operador" (&).

Passo 4: Use a variável de ponteiro para imprimir o endereço da variável original.

A seguir, é apresentada uma ilustração de um programa C que imprime um endereço variável usando “Ponteiro”.

#incluir
int main (vazio)

int num1;
int *ptr_num1 = &num1;
printf ("Por favor, insira um valor inteiro para imprimir seu endereço \ n");
scanf ("%d", & num1);
printf ("O número inserido é %d: \ n", num1);
printf ("Endereço de A: %P \ n", ptr_num1);
flutuar num2;
Float *ptr_num2 = &num2;
printf ("Por favor, insira um valor de flutuação para imprimir seu endereço \ n");
scanf ("%f", & num2);
printf ("O número inserido é %f: \ n", num2);
printf ("Endereço de B: %p \ n", ptr_num2);
char c;
char *ptr_c = & c;
printf ("Insira um personagem para imprimir seu endereço \ n");
scanf ("%c", & c);
getchar ();
printf ("Endereço de C: %p \ n", ptr_c);
retornar 0;

O programa acima leva ao usuário a inserir um número inteiro, um flutuador e um personagem, então imprime seus valores e endereços de memória usando Ponteiros. Ele usa o "Endereço do operador" (&) Para atribuir o endereço de memória das variáveis ​​às variáveis ​​de ponteiro correspondentes e, em seguida.h).

Saída

Conclusão


Imprimir o endereço de uma variável na programação C pode ser feita utilizando o "endereço de" Variáveis ​​de operador ou ponteiro. O "endereço de" O operador requer o uso do "&" símbolo para obter o endereço, enquanto as variáveis ​​do ponteiro exigem o uso do "*" símbolo para declarar uma variável de ponteiro e "&" Para atribuir o endereço da variável original. Ambos os métodos permitem o endereço exclusivo de uma variável a ser impressa e usada na programação C.