Apontadores e Estruturas de Dados Dinâmicas em C (IST) - Textos Académicos - Portugal-a-Programar
Apontadores e Estruturas de Dados Dinâmicas em C (IST)
Autor: Professor Fernando Mira da Silva
O C é provavelmente a mais flexível das linguagens de programação de alto-nível, mas apresenta uma relativa complexidade sintáctica. Uma das maiores dificuldades na abordagem do C numa disciplina de introdutória de programação é a necessidade de introduzir os conceitos de endereço de memória, apontador e memória dinâmica.
Este texto foi preparado para apoio à disciplina de Introdução à Programação da Licenciatura em Engenharia Electrotécnica e Computadores do Instituto Superior Técnico. Este texto tenta focar de modo sistemático alguns dos tópicos que maiores dúvidas suscita nas abordagens iniciais da linguagem: apontadores e estruturas de dados dinâmicas. Assim, embora se pressuponha o conhecimentos dos elementos básicas da linguagem C por parte do leitor – nomeadamente, os tipos de dados elementares e as estruturas de controlo – o texto é mantido ao nível elementar de uma disciplina introdutória de informática.
Na apresentação das estruturas de dados consideradas, que incluem pilhas, filas, listas e anéis, introduz-se de forma natural a noção de abstracção de dados, e os princípios essenciais de estruturação e modularidade baseados neste paradigma de programação.
Para o programador experiente em C, alguns dos exemplos de código poderão parecer pouco optimizados. Trata-se de uma opção premeditada que tenta beneficiar a clareza e a simplicidade algorítmica, ainda que em alguns casos esta opção possa sacrificar ligeiramente a eficiência do código apresentado. Pensamos, no entanto, que esta é a opção correcta numa abordagem introdutória da programação.