Índice:
Vídeo: Programação em C - Aula 40 - Constantes 2024
As constantes podem ser muito úteis na programação C sempre que você tiver algum valor que seja repetido em seu programa. Declarar uma constante permite que você mude rapidamente e facilmente um valor que é usado em todo o seu código, simplesmente alterando a declaração.
Declarando constantes
Ao contrário das variáveis, as constantes são declaradas usando o préprocessador de linguagem C e não o compilador. Aqui está o formato:
#define VOTING_AGE 18
A diretiva #define é um comando de pré-processador. É seguido pelo nome do símbolo que está sendo definido, VOTING_AGE. Estes símbolos são nomeados como variáveis, embora o uso de ALL CAPS para constantes permite identificar facilmente as constantes versus as variáveis em seu código-fonte. O símbolo deve ser tudo uma palavra. Seguir o símbolo é um espaço e depois o valor que representa o símbolo. Não há sinal igual!
Não inclua um ponto-e-vírgula, a menos que você queira que o ponto e vírgula seja parte da constante (e você provavelmente não).
O préprocessador toma o símbolo e faz uma operação de busca e substituição em todo o seu código, substituindo o símbolo pelo que representa. No final, a "constante" torna-se um valor imediato. E, usando #define para criar a constante, você se entrega a flexibilidade para alterá-la facilmente mais tarde.
Usando constantes no seu código
As definições constantes geralmente seguem as diretrizes #include na parte superior do código-fonte C:
#include #define SPEEDLIMIT 55 #define RATE 15 #define FIRST_TICKET 85 #define SECOND_TICKET 95 #define THIRD_TICKET 100 int main () {int total, fine, speeding; coloca ("Speeding Ticketsn"); / * primeiro bilhete * / speeding = FIRST_TICKET - SPEEDLIMIT; multa = aceleração * TAXA; total = total + multa; printf ("For going% d in a% d zone: $% dn", FIRST_TICKET, SPEEDLIMIT, multa); / * segundo ticket * / speeding = SECOND_TICKET - SPEEDLIMIT; multa = aceleração * TAXA; total = total + multa; printf ("For going% d in a% d zone: $% dn", SECOND_TICKET, SPEEDLIMIT, multa); / * terceiro ticket * / speeding = THIRD_TICKET - SPEEDLIMIT; multa = aceleração * TAXA; total = total + multa; printf ("For going% d in a% d zone: $% dn", THIRD_TICKET, SPEEDLIMIT, multa); / * Exibir total * / printf ("nTotal em multas: $% dn", total); return (0);}
Digite isso em seu editor, salve-o, compile-o e execute-o.
Suponha que você tenha concluído o programa, mas o conselho local altera o limite de velocidade de 55 mph a 60 mph. Além disso, a multa saltou de US $ 15 para US $ 26 por cada milha por hora, você ultrapassou o limite.Como você usou constantes, você pode fazer essas mudanças em um lugar e fazê-las escorrer para o código inteiro.
Neste caso, você mudaria suas declarações constantes para isso:
#define SPEEDLIMIT 60 #define RATE 26
Outras coisas que você pode #define
A diretiva #define não se limita a criar meramente constantes para você. Você pode definir qualquer coisa com a diretiva #define, substituindo essencialmente os principais itens do seu programa com o que quiser. Um bom exemplo de quando você pode querer fazer isso pode ser algo assim:
#define ASK_PROMPT printf ("Você deseja continuar (Y / N)?");
Desta forma, o programador pode apenas digitar ASK_PROMPT no código, que é globalmente substituído pela declaração printf () quando o código é compilado. (Como um bônus, o programador pode consertar universalmente todos os prompts, simplesmente modificando o #define único.)