Carácter literal
Un carácter literal es un carácter entre comillas simples. Entonces,
carbonizarseident1= 'A'; carbonizarseident2= 'b'; carbonizarseident3= '4'; carbonizarseident4= '6';
son todas diferentes definiciones de personajes. Tenga en cuenta que un dígito entre comillas simples es un carácter y no un número entero.
Una secuencia de escape como (ver más abajo) entre comillas simples, es un carácter. Entonces,
carbonizarseident1= ''';
es un personaje.
Un solo símbolo entre comillas dobles no es un carácter; es una cadena de un carácter. Entonces, A o c o 2 no es un carácter, sino una cadena de un carácter cada uno.
La variable de un char se puede reasignar, más adelante en el programa, de la siguiente manera:
carbonizarseident= 'x';
ident= 'Y';
Para evitar que se cambie un carácter asignado a un identificador, más adelante en el programa, preceda la definición con la palabra reservada, const, de la siguiente manera:
constante carbonizarseident= 'D';Se dice que la variable ident es de solo lectura.
Literal de cadena
Un literal de cadena es una secuencia de caracteres entre comillas dobles. Entonces,
carbonizarseident1[] = 'Te quiero'; carbonizarseident2[] = 'Odio a 3 de ustedes'; carbonizarseident3[]= 'somos el Mundo'; carbonizarseident4[] = '¡Hola Mundo!';
son todas definiciones diferentes de cadenas literales. Tenga en cuenta el uso de comillas dobles. No hay nada como una variable ordinaria para una cadena. Un literal de cadena es una matriz de caracteres, donde en lugar de delimitar con {}, la secuencia se delimita con. Los caracteres no están separados por comas. Cualquier número mayor que el número de caracteres en el literal de cadena se puede colocar entre corchetes. Sin embargo, es mejor dejar los corchetes vacíos.
Un solo carácter entre comillas dobles no es un carácter; es una cadena de un carácter. Entonces, A o c o 2 no es un carácter, sino una cadena de un carácter cada uno.
Una variable de cadena no permite la reasignación del literal completo, más adelante en el programa, ver más abajo. Sin embargo, los caracteres individuales se pueden reasignar; consulte a continuación.
Cita simple y doble en carácter o literal
Para tener una comilla simple como personaje, haz algo como,
carbonizarseident= ''';Para tener una comilla doble como carácter en una cadena literal, haga algo como,
carbonizarseident[] = 'lejos'cd';La barra invertida se utiliza en una secuencia de escape para evitar conflictos con los delimitadores. Para tener una comilla doble como carácter, no hay necesidad de la barra invertida: '' está bien. Para tener una comilla simple en un literal de cadena, no es necesaria la barra invertida: ab'cd está bien.
Dado que la barra invertida se usa para escapar de un carácter, debe escaparse con otra barra invertida cuando se usa como un carácter o en una cadena literal.
Secuencia de escape
Una secuencia de escape es una de las siguientes:
' '? \ a F orte r> t vCada secuencia de escape normalmente se escribe como un carácter entre comillas simples o como una secuencia de escape entre comillas dobles.
- ’: Se utiliza como un carácter de comillas simples, entre comillas simples.
- : se usa como un carácter de comillas dobles, dentro de un literal.
- ? : ya que ? es un carácter reservado, debe escaparse en un literal.
- \: la barra invertida debe escaparse como un carácter o en un literal de cadena, para no dar lugar a ningún otro significado.
- a: suena una campana de alarma una vez, cuando se usa como un carácter o dentro de una cadena literal.
- b: resulta como un retroceso en la pantalla dentro de una cadena literal, quitando el carácter anterior.
- f: hace que la página siguiente se alimente a la impresora cuando se usa como un carácter o dentro de un literal.
- r: devuelve el cursor, donde se imprimirá el siguiente carácter, pero dentro de la línea actual.
- n: devuelve el cursor al principio de la línea siguiente o simplemente a la línea siguiente, según el sistema operativo.
- t: crea una pestaña horizontal.
- v: crea una pestaña vertical.
Operaciones con personajes
Concatenación
En la definición, dos literales de cadena se pueden unir con el espacio de la siguiente manera:
carbonizarseident[] = 'abc' 'def';costo<<ident<< ' orte';
La salida es: abcdef. Esta definición se puede extender a más de dos literales. Nota: la declaración es una definición, no solo una asignación. La definición puede incluso continuar a la siguiente línea con un espacio que separa las líneas de la siguiente manera:
carbonizarseident[] = 'abc' 'def''tomar nota';
costo<<ident<< ' orte';
La salida es abcdefghi.
Nota: Los caracteres no se pueden concatenar de esta forma, ya que las comillas simples del carácter no pueden tener más de un símbolo.
Operadores de igualdad
Los mismos caracteres en el mismo caso son iguales. No son iguales si no son del mismo caso. Considerar,
resultado bool= 'B' == 'B';costo<<resultado<< ' orte';
== significa igual, mientras que = significa asignado y no igual. La salida es 1 para verdadero. Considerar,
resultado bool= 'B' == 'b';costo<<resultado<< ' orte';
La salida es 0 para falso. Considerar,
resultado bool= 'b' == 'c';costo<<resultado<< ' orte';
La salida es 0 para falso. Considerar,
resultado bool= 'B' != 'B';costo<<resultado<< ' orte';
! = significa no igual, mientras que = significa asignado y no igual. La salida es 0 para falso. Considerar,
resultado bool= 'B' != 'b';costo<<resultado<< ' orte';
La salida es 1 para verdadero. Considerar,
resultado bool= 'b' != 'c';costo<<resultado<< ' orte';
La salida es 1 para verdadero.
Entonces, == y! = Son operadores de igualdad.
Operadores relacionales
Para los caracteres ordinarios en C ++, en orden ascendente, los números van antes de las letras mayúsculas, que vienen antes de las minúsculas.
Entonces
La cadena literal como objeto
La matriz es un puntero constante al comienzo de una secuencia de tipo de datos en particular. De manera similar, la cadena es un puntero constante al comienzo de una secuencia de caracteres. Compare las siguientes definiciones:
En tarr[] = {3, 4, 5, 6, 7};carbonizarsepag[] = {'en', 'o', 'metro', 'a', 'norte'};
carbonizarseStri[] = 'mujer';
La primera matriz es una matriz de entradas y tiene cinco elementos. La segunda y tercera matrices son matrices de caracteres con diferentes nombres, pero el mismo número de elementos. La segunda y tercera matrices son iguales, pero por sus nombres. El contenido de texto de la segunda matriz está delimitado por llaves; los caracteres están separados por comas y cada carácter está entre comillas simples. El contenido de texto de la tercera matriz está delimitado por comillas dobles; los caracteres no están separados por comas y cada carácter no está entre comillas simples. La segunda y tercera matrices son dos formas de producir una cadena, siendo la tercera forma la mejor.
arr es un puntero constante al primer elemento de su matriz, lo que significa que arr siempre apuntará a la ubicación que tiene el número entero, 3, incluso si se cambia el valor de 3. El tamaño de la matriz, cinco elementos, no permanece constante. Sin embargo, cada uno de los valores de la matriz se puede cambiar.
str es un puntero constante al primer elemento de su matriz, lo que significa que str siempre apuntará a la ubicación que tiene el carácter 'w' incluso si se cambia el valor de 'w'. El tamaño de la matriz de caracteres, cinco elementos, no permanece constante. Sin embargo, cada uno de los valores del literal se puede cambiar.
Stri es un puntero constante al primer elemento de su literal (matriz), lo que significa que Stri siempre apuntará a la ubicación que tiene el carácter, w incluso si se cambia el valor de w. El tamaño de la cadena literal (matriz), cinco elementos, en realidad no permanece constante. Sin embargo, cada uno de los valores del literal se puede modificar.
¿Qué es constante en una matriz o literal de cadena? La dirección de memoria del primer elemento de la matriz o literal permanece como el valor del nombre (identificador) de la matriz o literal y no se puede cambiar. Bueno, el tamaño de la matriz o literal no permanece constante. Cada valor de la matriz o literal se puede cambiar. El siguiente código muestra cómo se ha cambiado el cuarto elemento de cada una de las matrices:
En tarr[] = {3, 4, 5, 6, 7};carbonizarsepag[] = {'en', 'o', 'metro', 'a', 'norte'};
carbonizarseStri[] = 'mujer';
arr[3] = 9;
pag[3] = 'Y';
Stri[3] = 'Y';
costo<<arr[3] << ' orte';
costo<<pag<< ' orte';
costo<<Stri<< ' orte';
La salida es:
9Mujeres mujeres
mujeres
Tenga en cuenta que se puede acceder a los elementos de un literal de cadena definido, como para la tercera definición anterior, con el índice de matriz (subíndice). El motivo de la segunda línea de la salida se da a continuación.
Subíndice de definición
Tenga en cuenta que en las definiciones anteriores, no hay un número entero para el subíndice. Cuando el programador no pueda determinar fácilmente el número de elementos, se debe omitir el número entero del subíndice. Cualquiera que sea el caso, el número entero no debe ser menor que el número de elementos de la matriz.
Para el literal de cadena, el número entero debe ser al menos 1 más alto que el número de caracteres de la cadena. Esto se debe a que el compilador siempre agrega el carácter nulo ( 0), al final de una matriz que es una cadena, delimitada por comillas dobles. El carácter nulo no se agrega al final de la segunda matriz anterior, porque no es una cadena oficial. La tercera matriz es una cadena oficial. El siguiente código muestra los valores mínimos de subíndice.
En tarr[5] = {3, 4, 5, 6, 7};carbonizarsepag[5] = {'en', 'o', 'metro', 'a', 'norte'};
carbonizarseStri[6] = 'mujer';
Para que la segunda definición sea una cadena oficial, el carácter nulo debe agregarse de la siguiente manera:
En tarr[5] = {3, 4, 5, 6, 7};carbonizarsepag[6] = {'en', 'o', 'metro', 'a', 'norte', '