Variable C, tipos de datos, constantes

⚡ Resumen inteligente

Las variables, los tipos de datos y las constantes constituyen la base de todo programa en C, donde las variables almacenan valores modificables, los tipos de datos definen el tamaño y el rango de esos datos, y las constantes almacenan valores fijos que nunca cambian.

  • 🔤 Variables: Una variable es un identificador con nombre cuyo valor puede cambiar, declarado mediante letras, dígitos o un guion bajo.
  • 🧮 Tipos de datos: Los tipos de datos de C son primitivos, derivados y definidos por el usuario, incluyendo int, char, float, double y void, cada uno con un tamaño y un rango fijos.
  • 🔒 Constantes: Las constantes almacenan valores fijos e incluyen constantes enteras, de caracteres, de cadena y reales que nunca cambian.
  • ⚙️ Declaración: Tanto la palabra clave const como la directiva #define crean constantes; una reserva memoria y la otra sustituye texto.
  • 🤖 Asistencia de IA: GitHub Copilot sugiere los tipos de datos correctos, señala los errores de nomenclatura y acelera las declaraciones en C.

Variable C, tipos de datos, constantes

¿Qué es una variable?

Una variable es un identificador que se utiliza para almacenar algún valor. Las constantes nunca pueden cambiar en el momento de la ejecución. Las variables pueden cambiar durante la ejecución de un programa y actualizar el valor almacenado en su interior.

Se puede utilizar una única variable en varias ubicaciones de un programa. El nombre de una variable debe ser significativo. Debe representar el propósito de la variable.

Example: Height, age, are the meaningful variables that represent the purpose it is being used for. Height variable can be used to store a height value. Age variable can be used to store the age of a person

Primero se debe declarar una variable antes de usarla en algún lugar dentro del programa. El nombre de una variable se forma utilizando caracteres, dígitos y un guión bajo.

Las siguientes son las reglas que se deben seguir al crear una variable:

  • El nombre de una variable debe constar únicamente de caracteres, dígitos y un guión bajo.
  • El nombre de una variable no debe comenzar con un número.
  • El nombre de una variable no debe constar de espacios en blanco.
  • El nombre de una variable no debe consistir en una palabra clave.
  • "C" es un lenguaje que distingue entre mayúsculas y minúsculas, lo que significa que una variable llamada "edad" y "EDAD" son diferentes.

A continuación se muestran ejemplos de nombres de variables válidos en un programa 'C':

height or HEIGHT
_height
_height1
My_name

A continuación se muestran ejemplos de nombres de variables no válidos en un programa 'C':

1height
Hei$ght
My name

Por ejemplo, declaramos una variable entera llamada my_variable y le asignamos el valor 48:

int my_variable;
my_variable = 48;

Por cierto, podemos declarar e inicializar (asignar un valor inicial) una variable en una sola declaración:

int my_variable = 48;

Tipos de datos

'C' ofrece varios tipos de datos para que sea más fácil para un programador seleccionar un tipo de datos adecuado según los requisitos de una aplicación. A continuación se muestran los tres tipos de datos:

  • Tipos de datos primitivos
  • Tipos de datos derivados
  • Tipos de datos definidos por el usuario.

Hay cinco tipos de datos fundamentales primarios,

  • int para datos enteros
  • char para datos de caracteres
  • float para números de punto flotante
  • doble para números de punto flotante de doble precisión
  • vacío

Los arreglos, las funciones, los punteros y las estructuras son tipos de datos derivados. El lenguaje C proporciona versiones más extensas de los tipos de datos primarios mencionados anteriormente. Cada tipo de dato difiere de los demás en tamaño y rango. La siguiente tabla muestra el tamaño y el rango de cada tipo de dato.

Tipo de datos Tamaño en bytes Autonomía
Char o char firmado 1 -128 a 127
Char sin firmar 1 0 a 255
int o int firmado 2 -32768 a 32767
Int sin firmar 2 0 a 65535
Int corto o int corto sin signo 2 0 a 255
Int corto firmado 2 -128 a 127
Int largo o int largo con signo 4 -2147483648 a 2147483647
Int largo sin firmar 4 0 a 4294967295
flotar 4 3.4E-38 hasta 3.4E + 38
doble 8 1.7E-308 hasta 1.7E + 308
Doble largo 10 3.4E-4932 hasta 1.1E + 4932

Nota: En C, no existe el tipo de dato booleano.

tipo de datos entero

El número entero no es más que un número entero. El rango para un tipo de datos entero varía de una máquina a otra. El rango estándar para un tipo de datos entero es de -32768 a 32767.

Un número entero suele tener 2 bytes, lo que significa que consume un total de 16 bits en la memoria. Un único valor entero ocupa 2 bytes de memoria. Un tipo de datos entero se divide a su vez en otros tipos de datos, como short int, int e long int.

Cada tipo de datos difiere en su rango aunque pertenezca a la familia de tipos de datos enteros. Es posible que el tamaño no cambie para cada tipo de datos de familia de enteros.

El int corto se usa principalmente para almacenar números pequeños, el int se usa para almacenar valores enteros de tamaño promedio y el int largo se usa para almacenar valores enteros grandes.

Siempre que queramos usar un tipo de dato entero, tenemos que colocar int antes del identificador, como por ejemplo:

int age;

Aquí, la edad es una variable de tipo de datos entero que se puede utilizar para almacenar valores enteros.

Tipo de datos de punto flotante

Al igual que los números enteros, en el programa 'C' también podemos utilizar tipos de datos de punto flotante. La palabra clave "flotante" se utiliza para representar el tipo de datos de punto flotante. Puede contener un valor de coma flotante, lo que significa que un número tiene una fracción y una parte decimal. Un valor de coma flotante es un número real que contiene un punto decimal. El tipo de datos entero no almacena la parte decimal, por lo que podemos usar flotantes para almacenar la parte decimal de un valor.

En general, un float puede contener hasta 6 valores de precisión. Si el float no es suficiente, podemos utilizar otros tipos de datos que puedan contener valores de punto flotante grandes. Los tipos de datos double y long double se utilizan para almacenar números reales con precisión de hasta 14 y 80 bits respectivamente.

Al utilizar un número de punto flotante, se debe colocar una palabra clave float/double/long double antes de un identificador. Los ejemplos válidos son:

float division;
double BankBalance;

Tipo de datos de carácter

Los tipos de datos de caracteres se utilizan para almacenar un valor de un solo carácter entre comillas simples.

Un tipo de dato de carácter ocupa hasta 1 byte de espacio en la memoria.

Ejemplo,

Char letter;

Tipo de datos nulo

Un tipo de datos nulo no contiene ni devuelve ningún valor. Se utiliza principalmente para definir funciones en "C".

Ejemplo,

void displayData()

Declaración de tipo de una variable

int main() {
int x, y;
float salary = 13.48;
char letter = 'K';
x = 25;
y = 34;
int z = x+y;
printf("%d \n", z);
printf("%f \n", salary);
printf("%c \n", letter);
return 0;}

Salida:

59
13.480000
K

Podemos declarar varias variables del mismo tipo de dato en una sola línea separándolas con una coma. Además, observe el uso de especificadores de formato en la función de salida printf float (%f), char (%c) e int (%d).

Constantes

Las constantes son valores fijos que nunca cambian durante la ejecución de un programa. A continuación se muestran los distintos tipos de constantes:

constantes enteras

Una constante entera no es más que un valor que consta de dígitos o números. Estos valores nunca cambian durante la ejecución de un programa. Las constantes enteras pueden ser octales, decimales y hexadecimales.

La constante decimal contiene dígitos del 0 al 9, como por ejemplo,

Example, 111, 1234

Arriba están las constantes decimales válidas.

La constante octal contiene dígitos del 0 al 7 y este tipo de constantes siempre van precedidas de 0.

Example, 012, 065

Arriba están las constantes octales válidas.

La constante hexadecimal contiene un dígito del 0 al 9, así como caracteres del A al F. Las constantes hexadecimales siempre van precedidas de 0X.

Example, 0X2, 0Xbcd

Arriba están las constantes hexadecimales válidas.

Las constantes enteras octales y hexadecimales rara vez se utilizan en la programación con 'C'.

Constantes de caracteres

Una constante de carácter contiene un único carácter encerrado entre comillas simples ('). También podemos representar una constante de carácter proporcionando su valor ASCII.

Example, 'A', '9'

Arriba se muestran ejemplos de constantes de caracteres válidas.

Constantes de cadena

Una constante de cadena contiene una secuencia de caracteres entre comillas dobles (“”).

Example, "Hello", "Programming"

Estos son ejemplos de constantes de cadena válidas.

constantes reales

Como constantes enteras que siempre contienen un valor entero. 'C' también proporciona constantes reales que contienen un punto decimal o un valor de fracción. Las constantes reales también se denominan constantes de coma flotante. La constante real contiene un punto decimal y un valor fraccionario.

Example, 202.15, 300.00

Estas son las constantes reales válidas en 'C'.

Una constante real también se puede escribir como,

Mantissa e Exponent

Por ejemplo, para declarar un valor que no cambia como la clásica constante circular PI, hay dos formas de declarar esta constante

Al usar la palabra clave const en la declaración de una variable, se reservará memoria de almacenamiento.

#include <stdio.h>
int main() {
const double PI = 3.14;
printf("%f", PI);
//PI++; // This will generate an error as constants cannot be changed
return 0;}

Al usar la directiva de preprocesador #define, que no usa memoria para el almacenamiento y sin poner un punto y coma al final de esa instrucción.

#include <stdio.h>
#define PI 3.14
int main() {
printf("%f", PI);
return 0;}

Preguntas Frecuentes

Una variable es una ubicación de memoria con nombre cuyo valor puede cambiar durante la ejecución. Una constante contiene un valor fijo que nunca cambia una vez definida.

La palabra clave `const` crea una constante tipada y almacenada en memoria que el compilador verifica. `#define` es una macro del preprocesador que sustituye texto y no utiliza almacenamiento.

Una variable local reside dentro de una función y existe solo mientras se ejecuta. Una variable global permanece accesible en todo el programa a través de C. clases de almacenamiento.

Un tipo con signo almacena valores negativos y positivos. Un tipo sin signo almacena solo valores no negativos, duplicando el rango positivo para la misma cantidad de bytes.

El C clásico no tenía tipo booleano; los programadores usaban int con 0 y 1. Desde C99, agrega bool, true y false a través del tipo _Bool.

Los especificadores de formato le indican a printf y scanf cómo interpretar los datos. %d maneja números enteros, %f maneja números de punto flotante y %c maneja un solo carácter.

Sí. Los asistentes de codificación con IA sugieren tipos de datos, advierten sobre valores que exceden un rango y señalan nombres que entran en conflicto con palabras clave. Siempre revise el resultado.

Copiloto de GitHub Completa automáticamente las declaraciones de variables y constantes a partir de comentarios o código cercano. Sugiere nombres y tipos de datos, y redacta líneas const o #define para su revisión.

Resumir este post con: