Constantes y literales en C#: Tipos, reglas y mejores prácticas
Las constantes son valores fijos que el programa no puede alterar durante su ejecución. Estos valores fijos también se llaman literales. Las constantes pueden ser de cualquiera de los tipos de datos básicos: constantes enteras, de punto flotante, de carácter o literales de cadena. También existen constantes de enumeración.
Las constantes se tratan como variables regulares, excepto que sus valores no pueden modificarse después de su definición.
Literales enteros
Un literal entero puede ser decimal o hexadecimal. Un prefijo especifica la base: 0x o 0X para hexadecimal, y sin prefijo para decimal.
Un literal entero también puede tener un sufijo que combina U y L, para unsigned y long, respectivamente. El sufijo puede ser mayúscula o minúscula y en cualquier orden.
Ejemplos de literales enteros:
212 // Legal
215u // Legal
0xFeeL // Legal
Otros ejemplos:
85 // decimal
0x4b // hexadecimal
30 // int
30u // unsigned int
30l // long
30ul // unsigned long
Literales de punto flotante
Un literal de punto flotante tiene una parte entera, un punto decimal, una parte fraccionaria y una parte de exponente. Se pueden representar en forma decimal o exponencial.
Ejemplos:
3.14159 // Legal
314159E-5F // Legal
510E // Ilegal: exponente incompleto
210f // Ilegal: sin decimal ni exponente
.e55 // Ilegal: parte entera o fraccionaria faltante
En forma decimal, debe incluir el punto decimal, el exponente o ambos; en forma exponencial, debe incluir la parte entera, la fraccionaria o ambas. El exponente con signo se introduce con e o E.
Constantes de carácter
Los literales de carácter se encierran entre comillas simples. Por ejemplo, 'x' y se pueden almacenar en una variable de tipo char. Un literal de carácter puede ser un carácter simple (como 'x'), una secuencia de escape (como '\t') o un carácter universal (como '\u02C0').
Existen ciertos caracteres en C# que, precedidos por una barra invertida, tienen un significado especial para representar cosas como nueva línea (\n) o tabulación (\t). Aquí hay una lista de secuencias de escape:
| Secuencia de escape | Significado |
|---|---|
| \\ | Carácter \ |
| \' | Carácter ' |
| \" | Carácter " |
| \? | Carácter ? |
| \a | Alerta o campana |
| \b | Retroceso |
| \f | Salto de página |
| \n | Nueva línea |
| \r | Retorno de carro |
| \t | Tabulación horizontal |
| \v | Tabulación vertical |
| \xhh... | Número hexadecimal de uno o más dígitos |
Ejemplo con secuencias de escape:
using System;
namespace EscapeChar {
class Program {
static void Main(string[] args) {
Console.WriteLine("Hello\tWorld\n\n");
Console.ReadLine();
}
}
}
Resultado:
Hello World
Literales de cadena
Los literales de cadena se encierran entre comillas dobles "" o con @"". Una cadena contiene caracteres similares a los literales de carácter: caracteres simples, secuencias de escape y caracteres universales.
Puede dividir una línea larga en múltiples líneas usando literales de cadena y separando las partes con espacios en blanco.
Ejemplos (las tres formas son idénticas):
"hello, dear"
"hello, \ dear"
"hello, " "d" "ear"
@"hello dear"
Definición de constantes
Las constantes se definen usando la palabra clave const. La sintaxis es:
const <tipo_dato> <nombre_constante> = valor;
Ejemplo: Uso de una constante
using System;
namespace DeclarandoConstantes {
class Program {
static void Main(string[] args) {
const double pi = 3.14159; // declaración de constante
double r;
Console.WriteLine("Ingrese el radio: ");
r = Convert.ToDouble(Console.ReadLine());
double areaCirculo = pi * r * r;
Console.WriteLine("Radio: {0}, Área: {1}", r, areaCirculo);
Console.ReadLine();
}
}
}
Resultado (con entrada 3):
Ingrese el radio: 3
Radio: 3, Área: 28.27431
Lenguaje C
- Resumen Integral de Resistores, Inductores y Capacitores en Circuitos de CA
- Entendiendo palabras clave e identificadores en C#: Reglas, listas y mejores prácticas
- Clases y objetos en C#: Fundamentos para POO robusta
- Dominando clases y métodos abstractos en C#: Guía práctica
- Entendiendo clases y métodos parciales en C#
- Dominando clases y métodos sealed en C#: Cuándo usarlos, ejemplos claros y mejora de seguridad y rendimiento
- Dominando Variables, Literales y Constantes en C++: Guía Completa
- Palabras clave e identificadores en C: guía práctica
- Variables, constantes y literales en C: guía completa
- Variables, tipos de datos y constantes en C – Guía práctica
- Entendiendo constantes y literales en C: Tipos, uso y mejores prácticas