Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Sugestão
Este artigo faz parte da secção Fundamentos para programadores que já conhecem pelo menos uma linguagem de programação e estão a aprender C#. Se és novo na programação, começa primeiro pelos tutoriais para começar . Para a sintaxe completa das sentenças, veja Instruções na especificação da linguagem C#.
Vem de outra língua? Declarações, condições, ciclos e retornos podem ser familiares. O C# utiliza a sua própria sintaxe e classificação para estas características, que este artigo apresenta.
Uma afirmação é uma ordem completa: "faz isto." Juntas, as afirmações num programa formam uma receita que o programa segue do início ao fim. A maioria das instruções é executada em sequência. As bifurcações escolhem que passos executar, e os ciclos repetem passos.
Este exemplo declara uma quantidade, apresenta-a e depois usa uma if instrução para decidir se deve reabastecer:
int quantity = 5;
Console.WriteLine($"Quantity: {quantity}"); // => Quantity: 5
if (quantity < 10)
{
quantity = 10;
Console.WriteLine("Restocked"); // => Restocked
}
Console.WriteLine($"Quantity: {quantity}"); // => Quantity: 10
Leia o exemplo como comandos completos antes de observar as respetivas partes. A declaração, a primeira chamada a Console.WriteLine, toda a construção if e a chamada final a Console.WriteLine são instruções. O bloco na instrução if contém mais duas instruções.
As declarações contêm frequentemente expressões
As instruções frequentemente contêm expressões, que são pedaços de código que produzem valores. No exemplo anterior, a construção if inteira é uma instrução. A sua condição, quantity < 10, é uma expressão que produz ou true ou false.
Uma declaração introduz uma variável ou constante local. Uma expressão inicializadora pode fornecer o seu primeiro valor:
int quantity = 5;
A linha completa é uma instrução de declaração. O inicializador 5 é uma expressão dentro dessa afirmação.
Uma expressão de atribuição armazena um valor numa variável, propriedade, indexador ou outro local de armazenamento. C# permite que uma expressão de atribuição forme uma instrução de expressão:
quantity = 10;
Esta afirmação executa uma ação em vez de apenas calcular um valor. Chamadas de método e operações de incremento são outras instruções de expressão comuns:
Console.WriteLine("Restocking");
quantity++;
Apenas as seguintes formas de expressão podem ser declarações de expressão:
- Expressões de atribuição
- Expressões de invocação de métodos
- Expressões de criação de objetos
- Expressões de incremento e decremento de pré-fixo ou pós-fixo
-
awaitExpressões
Nem todas as expressões podem surgir isoladamente como enunciado. Por exemplo, quantity + 1; calcula um valor mas não o usa. Não é uma afirmação válida.
Aqui está uma definição útil de trabalho: uma afirmação é aproximadamente como uma frase completa em inglês, enquanto uma expressão é como uma frase. Esta distinção ajuda-o a compreender a terminologia formal e as explicações que encontrará na documentação e especificações, embora a programação comum raramente exija que se lembre conscientemente da distinção.
Agrupar instruções em blocos
Um bloco agrupa zero ou mais afirmações entre os colchetes ({ e }). C# trata o grupo como uma única afirmação. No exemplo inicial, a if instrução pode executar tanto a atribuição como a chamada para Console.WriteLine porque um bloco agrupa-as num só corpo. Os blocos podem ser aninhados dentro de outros blocos.
As instruções de seleção e iteração designam o respetivo corpo como uma instrução incorporada. Esse corpo pode ser uma única instrução sem chavetas ou um bloco que agrupa múltiplas instruções.
Prefira um bloco mesmo quando um corpo contém apenas uma afirmação. Os aparelhos indicam quais as declarações que pertencem ao corpo e impedem que edições posteriores coloquem acidentalmente uma declaração fora dele.
Blocos definem o âmbito das variáveis
As variáveis declaradas num bloco estão no âmbito desde a sua declaração até ao fim desse bloco. Um bloco aninhado pode usar variáveis declaradas por um bloco envolvente, mas o bloco envolvente não pode usar variáveis declaradas apenas no bloco aninhado:
int outerValue = 10;
if (outerValue > 0)
{
int innerValue = outerValue * 2;
Console.WriteLine(innerValue); // => 20
}
// innerValue isn't in scope here.
Escolha uma declaração para a tarefa
Depois de reconhecer as instruções como comandos, pode escolher entre os seus diferentes tipos conforme o propósito:
- Declarar dados:As instruções de declaração introduzem variáveis e constantes locais.
- Realizar ações: As instruções de expressão atribuem valores, chamam métodos, criam objetos, incrementam ou diminuem valores, ou aguardam operações assíncronas.
-
Escolha as etapas:Instruções de seleção, como
ifeswitch, escolhem que código é executado. -
Repetir passos:Instruções de iteração, como
foreach,while, efor, repetem uma instrução ou bloco. -
Transferir controlo:Instruções de salto, como
break,continue,return, eyield, movem a execução para outro ponto. -
Tratar exceções:Instruções de gestão de exceções, como
try,catch, ethrow, respondem ou reportam erros. -
Gerir recursos: A
usingdeclaração assegura que os recursos são dispõedos. -
Utilize comportamento especializado: As instruções
checkedeunchecked,fixedelocksuportam cenários específicos.
Especificação da linguagem C#
Para obter mais informações, consulte a seção Instruções da especificação da linguagem C#.