Cursos / Eletrônica / Projeto de Sistemas Microcontrolados / Aula

arrow_back Aula 07 - Fundamentos de Linguagem C – Parte II

Comandos de seleção

Os comandos de seleção são aplicados quando se deseja realizar um determinado tipo de ação, com base no resultado de uma expressão condicional. Os comandos empregados pelos compiladores CCS e C18 são os mesmos dos compiladores C padrões, neste caso o if e o switch.

Comando if

Esse comando executa um ou mais comandos C, presentes num laço if, se uma dada expressão for verdadeira (diferente de ‘0’). Caso contrário, executa o bloco de comandos presentes no laço else.

Sintaxe

AخA
1
      if(expressão)
2
      { 
3
          // Bloco de comandos C a serem executados
4
      }
5
      else
6
      { 
7
          // Bloco de comandos C a serem executados
8
      }
9
    

O uso das chaves, {  }, delimitam o início e o fim do comando if, else.

Exemplo

x
1
      void main( ) // Função principal
2
      {
3
          int cont = 6;   // Declara uma variável do tipo int.
4
          short int cond;    // Declara uma variável do tipo short.
5
6
      if(cont<= 5)   // Verifica se a expressão é verdadeira.
7
          { cond = 1; }   //  Indica uma condição verdadeira.
8
      else 
9
          { cond = 0; } // Indica uma condição falsa.
10
      }
11
    

Comando Switch

O comando switch verifica se o valor de uma dada expressão é verdadeiro, em uma lista de constantes. Se o valor for igual ao rótulo (constante_1, constante_2 e constante_n) de uma cláusula case, as instruções pertencentes a ele serão executadas. Mas, se nenhum case atender à condição, então, os comandos presentes na cláusula default serão executados.

Sintaxe

15
1
      switch(expressão)
2
      { 
3
          case constant_1:
4
              // Bloco de comandos C a serem executados;
5
              break;
6
          case constant_2:
7
              // Bloco de comandos C a serem executados;
8
              break;
9
          case constant_n:
10
              / / Bloco de comandos C a serem executados;
11
              break;
12
          default:
13
              // Bloco de comandos C a serem executados;
14
      }
15
    

De forma idêntica,o uso das chaves, { }, indica o início e o fim do comando switch.

Na sintaxe do comando switch, pode-se observar a existência da cláusula break, empregada para efetuar a saída imediata da cláusula case. Se a cláusula break não existir em algum dos case, as instruções serão executadas até que uma cláusula break seja encontrada ou o último case seja executado.

Exemplo

27
1
      unsigned char int_para_char(int número) //Função secundária
2
      {
3
          unsigned char caractere_pro; //declara uma variável do tipo unsigned char
4
         switch(numero)
5
         {
6
                    case 0: caractere_pro = ‘0’; 
7
                               break;
8
                    case 1: caractere_pro = ‘1’; 
9
                               break;
10
                    case 2: caractere_pro = ‘2’; 
11
                               break;
12
                    case 3: caractere_pro = ‘3’; 
13
                               break;
14
                    default: caractere_pro =  ; 
15
                               break;
16
         }
17
          return caractere_pro; // Sai da função e retorna o valor do caractere_pro
18
      }
19
20
      void main( )   // Função principal
21
      {
22
          unsigned int num; // Declara uma variável do tipo unsigned int.
23
          unsigned char caractere; // Declara uma variável do tipo unsigned char.
24
          num = 2; // Atribui o valor 2 decimal a variável num.
25
          caractere = int_para_char(num); /* Chama a função int_para_char() e armazena o caractere retornado */
26
      }
27
    

Versão 5.3 - Todos os Direitos reservados