Diferencia entre revisiones de «const»
De ArduWiki
(→Descripción) |
(→Descripción) |
||
Línea 2: | Línea 2: | ||
Palabra clave conocida como '''calificadora'''. Hace que el valor asignado inicialmente no pueda ser cambiado tras la inicializacion. Se usa antes del tipo de datos de una variable, para modificar la manera en que el compilador y el [[boceto]] deben tratar dicha variable. | Palabra clave conocida como '''calificadora'''. Hace que el valor asignado inicialmente no pueda ser cambiado tras la inicializacion. Se usa antes del tipo de datos de una variable, para modificar la manera en que el compilador y el [[boceto]] deben tratar dicha variable. | ||
− | Las constantes son números que se usan directamente en un [[boceto]], como 123 o 3.1416. De forma predeterminada, estos números se tratan como: [[int]] (contantes enteras) o [[float]] (constantes de coma flotante), pero puede cambiar esto incluyendo en '''tipo''' o un subfijo modificador: U (unsigned) | + | Las constantes son números que se usan directamente en un [[boceto]], como 123 o 3.1416. De forma predeterminada, estos números se tratan como: [[int]] (contantes enteras) o [[float]] (constantes de coma flotante), pero puede cambiar esto incluyendo en '''tipo''' o un subfijo modificador: U (unsigned), L (long) o F (float). |
{{Nota|Una diferencia importante entre usar '''const''' o no es que al usarla la variable es almacenada en la memoria [[flash]] en lugar de la escasa [[SRAM]].}} | {{Nota|Una diferencia importante entre usar '''const''' o no es que al usarla la variable es almacenada en la memoria [[flash]] en lugar de la escasa [[SRAM]].}} |
Revisión del 03:19 2 feb 2020
Contenido
Descripción
Palabra clave conocida como calificadora. Hace que el valor asignado inicialmente no pueda ser cambiado tras la inicializacion. Se usa antes del tipo de datos de una variable, para modificar la manera en que el compilador y el boceto deben tratar dicha variable.
Las constantes son números que se usan directamente en un boceto, como 123 o 3.1416. De forma predeterminada, estos números se tratan como: int (contantes enteras) o float (constantes de coma flotante), pero puede cambiar esto incluyendo en tipo o un subfijo modificador: U (unsigned), L (long) o F (float).
Nota: Una diferencia importante entre usar const o no es que al usarla la variable es almacenada en la memoria flash en lugar de la escasa SRAM.
Sintaxis
const [tipo] variable = valor;
Parámetros
- tipo
- elegir el tipo de dato a almacenar: char, byte, int, long, float, etc de manera explicita o si prefiere puede añadir un subfijo al valor:
Tipo | Subfijo | Ejemplo |
---|---|---|
int | ninguno | 123 |
unsigned int | U | 123U |
long | L | 123L |
unsigned long | UL | 123UL |
float | F | 1.23F |
- Variable
- nombre de variable a definir.
- valor
- valor a almacenar en el rango del tipo de dato. Puede usar un prefijo para indicar la base en que esta expresado valor.
Base | Prefijo | Comentario | Ejemplo |
---|---|---|---|
DEC | ninguno | Dígitos 0~9 | 123 |
HEX | 0x | dígitos 0~9 + Caracteres A~F | 0x7B |
OCT | 0 | digitos 0~7 | 0173 |
BIN | B | 0 o 1 | B1110011 |
Comentarios
- El IDE dara un error de compilación si se intenta asignar un nuevo valor a una variable const lo que protege al programador contra un posible error.
- Todas las variables son almacenadas en SRAM salvo const que es almacenada en flash.
Advertencias
- Debe preferir const en lugar de define.
Ejemplos
const n = 33U //unsigned int
const n = 9L //long
const n = 32189UL //unsigned long
const byte n = 123;
const byte n = B1110011;
const byte n = 0173;
const byte n = 0x7B;
Vea también
Referencias
- Introduccion a la programacion en Arduino - Prometec
- Diferencia entre define y const en Arduino - ElectroGeek
- Variables en Arduino - Enrique Crespo