English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Funciones recursivas++ Tutoriales básicos

Funciones recursivas++ Control de flujo

Funciones recursivas++ Función

Funciones recursivas++ Arreglo & cadena

Funciones recursivas++ Estructura de datos

Funciones recursivas++ Clase & objeto

Funciones recursivas++ Punteros

Funciones recursivas++ Herencia

Funciones recursivas++ Tutorial STL

Funciones recursivas++ manual de referencia

Funciones recursivas++ tipos de modificadores

en C ++en la programación,modificador de tipo de datosSe utiliza para cambiar eltipo de datossignificado.

Funciones recursivas++ Permite en char, int y double Coloca el modificador antes del tipo de datos. Los modificadores se utilizan para cambiar el significado de los tipos básicos, por lo que son más adecuados para satisfacer diversas necesidades.

A continuación, se enumeran los modificadores de tipos de datos:

  • signed

  • unsigned

  • long

  • short

Los objetos de tipo de la clase no pueden modificarse ni cambiarse durante la ejecución del programa. signed, unsigned, long y short aplicable a tipos de enteros,signed y unsigned aplicable a tipos de caracteres,long aplicable a tipos de punto flotante.

Los objetos de tipo de la clase no pueden modificarse ni cambiarse durante la ejecución del programa. signed y unsigned también puede ser long o short prefijo del modificador. Por ejemplo:unsigned long int.

Funciones recursivas++ Permite usar símbolos abreviados para declararentero corto sin signooLongitud entera no signada。Puedes omitir int, solo escribe la palabra unsigned, short o unsigned, long,int es implícito. Por ejemplo, las siguientes dos declaraciones declaran variables de tipo entero no signado.

unsigned x;
unsigned int y;

Para entender C++ Explicamos la diferencia entre los modificadores de enteros signados y no signados, ejecutemos el siguiente programa corto:

#include <iostream>
using namespace std;
 
/* 
 * Este programa demuestra la diferencia entre enteros con signo y sin signo
*/
int main()
{
   short int i;           // entero corto con signo
   short unsigned int j;  // entero corto sin signo
 
   j = 50000;
 
   i = j;
   cout << i << " " << j;
 
   return 0;
}

Cuando se ejecuta el programa anterior, se producirá el siguiente resultado:

-15536 50000

En los resultados anteriores, el entero corto sin signo 5El patrón de bits de 0,000 se interpreta como un entero corto con signo -15,536.

Esta es una lista de explicaciones de modificadores de tipo:

tipo de datostamañoLimitador
signed int4 byte
para enteros (equivalente a int)
unsigned int4 bytesolo puede almacenar enteros no negativos
short2 bytepara números enteros pequeños (rango-32768hasta32767
longal menos4bytepara números enteros grandes (igual a long int)
unsigned long4 bytepara números enteros grandes o 0 (igual a unsigned long int)
long long8 bytepara números enteros muy grandes (igual a long long int).
unsigned long long8 bytepara números enteros muy grandes o 0 (igual a unsigned long long int)
long double8bytepara números de coma flotante grandes
signed char1 bytepara caracteres (garantiza rango-127a127
unsigned char1 bytepara caracteres (rango dede 0 a255

modificador de tipo short

Podemos usar el modificador de tipo short.número entero pequeño(rango−32,767hasta+32,767).

por ejemplo

// número entero pequeño
short a = 12345;

Aquí, a es una variable entera short.

Atención: short es equivalente a short int.

modificador de tipo long

Si necesitamos almacenar unnúmero entero grande(rango de-2147483647hasta2147483647),则可以使用类型修饰符long。por ejemplo,

// número entero grande
long b = 123456;

Atención: long es equivalente a long int.

El modificador long también se puede usar con variables double.

// número de coma flotante grande
long double c = 0.333333333333333333L;

Atención:Para representar long double, usamos el sufijo L. Si no usamos el sufijo L, se convierte double a long double (puede causar pérdida de datos).

long long

long long se puede repetir dos veces para crear el tipo long long. Este tipo se utiliza para números más grandes que long. El modificador long long solo se puede usar con int.

por ejemplo

// long long int
long long num = 12345678;

modificadores signed y unsigned

Las variables con signo (signed) pueden contenery positivoenteroy negativoentero, incluyendocero. Por ejemplo,

// valor entero positivo
signed int x = 23;
// valor entero negativo
signed int y = -13;
// entero de 0
signed int z = 0;

Aquí,

  • x tiene unvalor positivoentero

  • y tiene unvalor negativoentero

  • z tieneceroentero

variables sin signosolo puede contener enteros no negativos. Por ejemplo,

// entero positivo
unsigned int x = 2;
unsigned int y = 0;

Aquí,

  • x tiene un entero positivo

  • y tiene un entero cero

Por lo general, la variable int puede almacenar un rango de -2,147,483,648 a 2,147,483,647 valores. Mientras que la variable unsigned int puede almacenar un rango de de 0 a 4,294,967,295 .

los valores de los tipos de datos con signo (signed), sin signo (unsigned) y carácter común (carácter común)

Funciones recursivas ++Hay3Diferentes tipos de char: char, signed char y unsigned char. En realidad, básicamente solo hay dos tipos: signed char y unsigned char.

Esto se debe a que, aunque char y el estándar C ++El signed char o unsigned char en el contexto

Atención:Cuando solo usamos char en lugar de signed char o unsigned char, este tipo se llamacarácter común (carácter común).

Puede que ya hayas adivinado, signed char puede almacenar enteros positivos y negativos, mientras que unsigned char solo puede almacenar enteros positivos (incluidosDerechos de autor ©).

El rango garantizado de valores enteros que puede almacenar signed char es-127a127mientras que el rango de unsigned char esde 0 a255.

// caracteres comunes
char plain_1 = 65;
char plain_2 = 0;
// caracteres comunes con valor negativo
// Puede causar problemas en ciertos compiladores
char plain_3 = -56;
// signed char
signed char sin_1 = 12;
signed char sin_2 = 0;
signed char sin_3 = -12;
// unsigned char
unsigned char unsin_1 = -85;
unsigned char unsin_2 = 0;

Aquí,

  • plain_1 Tiene un entero positivo

  • plain_2 Tiene un entero cero

  • sin_1 Tiene un entero positivo

  • sin_2 Tiene un entero cero

  • sin_3 Tiene un entero negativo

  • unsin_1 Tiene un entero negativo

  • unsin_2 Tiene un entero cero

Atención: es mejor no usar caracteres comunes para realizar operaciones numéricas; debe usar signed char o unsigned char en su lugar. Los caracteres puros deben utilizarse solo para almacenar valores de caracteres.

Funciones recursivas++ de tipo

limitadores de tipo en

Los limitadores de tipo de la clase proporcionan información adicional sobre las variables.Limitador
SignificadoSignificado const
ModificadorLos objetos de tipo de la clase no pueden modificarse ni cambiarse durante la ejecución del programa. Modificador volatile
porinformar al compilador de que no se debe optimizar la declaración volatile de la variable, permitiendo que el programa lea directamente la variable desde la memoria. Para las variables generales, el compilador realiza optimizaciones, colocando el valor de la variable en el registro para acelerar la eficiencia de la escritura y lectura. por restrict99 El puntero modificado es la única manera de acceder al objeto al que apunta. Solo C