Cadenas al estilo C - Parte 1
Parte de la sección Fundamentos del Journey de C++ de Coddy — lección 67 de 74.
Las cadenas de estilo C se crean con el tipo char en lugar de string. Terminan con un carácter especial llamado carácter nulo ('\0').
Este carácter marca el final de la cadena. Las cadenas al estilo de C a menudo se denominan "cadenas terminadas en nulo".
Por ejemplo, una declaración simple:
char str1[] = "Hello";str1 se declara sin un tamaño específico. El compilador determina automáticamente el tamaño basándose en el inicializador (incluyendo el carácter nulo).
Ejemplo de inicialización explícita con caracteres:
char str2[6] = {'W', 'o', 'r', 'l', 'd', '\0'};str2 se declara con un tamaño de 6 y se inicializa explícitamente con caracteres, incluyendo el carácter nulo al final.
Ejemplo de inicialización parcial:
char str3[10] = "Coddy";str3 se declara con un tamaño de 10, pero solo se inicializan los primeros 6 caracteres. El resto del arreglo se rellena con caracteres nulos.
Para usar cadenas de estilo C, necesitamos incluirlo:
#include <cstring>Después de la inclusión, podemos usar la función strlen para obtener la longitud de una cadena de estilo C:
std::cout << strlen(str1); // Salida: 5Desafío
FácilCrea una función llamada printStringInfo que tome una cadena de estilo C como entrada y haga lo siguiente:
String:seguido de la cadena original.Length:seguido del resultado destrlen(str).Character at index 4:seguido del carácter en esa posición.Modified string:seguido de la cadena después de cambiar el primer carácter aX.
Hoja de referencia
Las cadenas de estilo C se crean con el tipo char y terminan con el carácter nulo '\0'. Son cadenas terminadas en nulo.
Declaración sin tamaño específico (el compilador determina el tamaño):
char str1[] = "Hello";Inicialización explícita con caracteres:
char str2[6] = {'W', 'o', 'r', 'l', 'd', '\0'};Inicialización parcial (el resto se rellena con caracteres nulos):
char str3[10] = "Coddy";Para usar funciones de cadenas de estilo C, incluya:
#include <cstring>Obtenga la longitud de la cadena usando strlen():
std::cout << strlen(str1); // Output: 5Pruébalo tú mismo
#include <iostream>
#include <cstring>
void printStringInfo(char str[]) {
// Imprimir la cadena
// Imprimir la longitud de la cadena
// Imprimir el carácter en el índice 4
// Modificar el primer carácter a 'X'
// Imprimir la cadena modificada
}
int main() {
char message[] = "Hello, World!";
printStringInfo(message);
return 0;
}Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Fundamentos
4Operadores Parte 1
Operadores aritméticosOperador móduloIncremento/DecrementoPost-incremento/decrementoAtajos aritméticosOperadores de comparaciónComparación de strings7Conceptos básicos de Entrada/Salida
Sentencia coutSentencia cinEntrada de cadenasResumen - Hasta 120Resumen - Verdadero o Falso5Operadores Parte 2
Operadores lógicos Parte 1Operadores lógicos Parte 2Repaso - Lógica simpleOperadores lógicos Parte 38Calculadora de números
Mensaje de bienvenidaObtención de números3Variables Parte 2
Declaración de tiposConvenciones de nomenclaturaResumen - Inicializar variablesType Casting Parte 1Type Casting Parte 26Toma de decisiones
Sentencia IfIf - ElseSentencia SwitchOperador condicionalRepaso - If ElseIf - Else anidados9Bucles
Bucle For - Parte 1Bucle WhileBucle Do WhileBreakContinueBucle For - Parte 2Bucles anidadosBucles infinitosResumen - Entrada dinámica12Cadenas
Cadenas al estilo C - Parte 1Cadenas al estilo C - Parte 2Operaciones con cadenasFunciones de cadenas - Parte 1Funciones de cadenas - Parte 2