Skip to content


Ponteiros em C

Um problema encontrado em disciplinas de computação é em como explicar o funcionamento de ponteiros aos alunos.

Devido a isso, resolvi criar um programa para exemplificar melhor o que ocorre na memória do computador, para que assim os alunos consigam entender melhor.

O programa demonstra na tela:

    [Pos. Mem.]   [Valor]
d1: [0x8049f20]   100
d2: [0x8049f24]   200
d3: [0x8049f28]   300
d4: [0x8049f2c]   400
p1: [0x8049f30]   0x8049f20 -> 100
p2: [0x8049f34]   0x8049f24 -> 200
p3: [0x8049f38]   0x8049f28 -> 300
p4: [0x8049f3c]   0x8049f2c -> 400

Onde:

  • A primeira coluna apresenta a variável;
  • A segunda coluna apresenta o endereço da memória;
  • A terceira coluna apresenta o valor dentro do endereço da memória referente;
  • A quarta coluna, presente somente nos ponteiros, que representa o valor referenciado pelo ponteiro (*p1, *p2, *p3 e *p4).
Após isso, os alunos tem as seguintes opções:
Menu
  [1] - Alterar o valor armazenado em p1, p2, p3 ou p4.
  [2] - Alterar o valor armazenado em d1, d2, d3 ou d4.
  [3] - Alterar o valor referenciado por p1, p2, p3 ou p4.
  [4] - Sair.
Digite a opção desejada:
E podem trabalhar livremente com a manipulação dos valores das variáveis do programa.
Utilizem à vontade e mandem sugestões de melhorias.
Obs.: Foi criado no GNU/Linux, onde apresentará uma melhor exibição.
abs

Postado em Outros.


0 Respostas

Fique por dentro da conversa, assine o Feed deste post   em RSS.



Some HTML is OK

ou, responda este post através de um trackback.