Enviado em 29/09/2012 - 23:58h
É... Esse é o tipo de coisa que eu chamo de "bacalhau": chamar outro programa, externamente, só para fazer pequenas tarefas como apagar a tela ou dar uma pausa. E system("exit"), então, é especialmente divertida porque não faz rigorosamente coisa alguma além de gastar recursos do sistema.
Como bacalhau, para mim, só é bom no prato e regado com azeite, eu recomendo evitar esse tipo de coisa tanto quanto possível. Quem está aprendendo a programar ou aprendendo uma nova linguagem deveria se preocupar mais com a arte de programar ou com os recursos (ou limitações) da linguagem sob estudo do que com firulas como limpar a tela, e quem pretende fazer uma aplicação séria em que limpar a tela é importante, certamente deveria preferir uma biblioteca especializada ligada diretamente ao programa à chamada de utilitários externos, que é mais lenta, gasta mais recursos e é mais sujeita a erros.
Penso que a Vânia está certa em querer uma biblioteca que lhe forneça essas operações de modo mais direto e independente de plataforma (isto é: a biblioteca forneceria uma interface consistente em todos os ambientes, embora seja claro que cada ambiente terá uma implementação potencialmente diferente dessa biblioteca).
Em todo caso, eu acho que seria útil, ainda que potencialmente trabalhoso (se bem que seria de acordo com o que eu disse acima sobre concentrar-se no aprendizado da arte de programar), apresentar desde cedo o fato de que C é uma linguagem que foi padronizada sem qualquer tipo específico de computador em mente, requerendo da máquina em que vai executar somente que ela seja capaz de ler e escrever em algum tipo de memória, fazer operações aritméticas simples e tomar decisões de controle do fluxo de execução do programa em função do resultado dessas operações. Do modo semelhante, seria interessante apresentar a biblioteca padrão de funções como seguindo linha parecida, estendendo a linguagem apenas ao pressupor um ambiente de apoio (semelhante a um sistema operacional), sem especificar características desse ambiente além do que seria necessário para um programa em C, e alguma forma de fazer entrada e saída, como arquivos ou dispositivos, mas também sem determinar para eles características específicas. Finalmente, dizer que tudo aquilo que amarra um programa ao ambiente em que ele executa é provido por bibliotecas, que podem ter sido escritas em C ou em oura linguagem qualquer, que o programa pode optar por usar quando for direcionado àquele sistema em particular, mas que a mesma biblioteca pode não existir em outros sistemas (ou até em diferentes versões ou implementações do mesmo sistema).