prefacio
Como principiante en programación, sé que aprender a programar requiere acumulación y registro continuos. En esta publicación de blog, compartiré algunos códigos de uso común, funciones específicas, conceptos complejos y funciones específicas que registré durante el proceso de aprendizaje del lenguaje de programación C/C++. ¡Espero aprender de ti y progresar juntos!
Códigos comunes:
1. Operaciones de entrada y salida:
- Utilice `cin` para entrada estándar.
- Utilice `cout` para salida estándar.
- Utilice `scanf` para entradas formateadas.
- Utilice `printf` para salida formateada.
2. Estructura de control:
- Declaración `if-else`: ejecuta diferentes bloques de código dependiendo de la condición.
- Bucle `for`: Repite un bloque de código un número específico de veces.
- Bucle `` while`: ejecuta repetidamente un bloque de código mientras una condición es verdadera.
- Instrucción `switch`: Ejecuta diferentes bloques de código dependiendo del valor.
3. Funciones específicas:
1. Función `strlen`: devuelve la longitud de una cadena.
2. Función `strcpy`: copia una cadena a otra cadena.
3. Función `strcmp`: compara si dos cadenas son iguales.
4. Función `atoi`: convierte una cadena en un número entero.
5. Función `rand`: genera números aleatorios.
4. Conceptos complejos:
1. Puntero: una variable que apunta a una dirección de memoria, a través de la cual se puede acceder y modificar los datos de la memoria.
2. Asignación de memoria dinámica: use la palabra clave "nueva" para asignar memoria en tiempo de ejecución y use la palabra clave "eliminar" para liberar memoria.
5. Funciones específicas:
1. Operaciones de archivos: abrir, leer y escribir archivos.
2. Estructuras de datos: como matrices, listas vinculadas, pilas y colas.
3. Algoritmos de clasificación: como clasificación por burbujas, clasificación por inserción y clasificación rápida.
código de referencia específico
Al aprender un lenguaje de programación, es muy importante comprender el uso específico de varias funciones. Las siguientes son descripciones detalladas y ejemplos de referencia correspondientes de algunas de las funciones antes mencionadas:
1. función `strlen`:
- Función: Devuelve la longitud de una cadena.
- Ejemplo de uso:
```c++
#include <iostream>
#include <cstring>
int main() { char str[] = "Hola mundo"; int length = strlen(str); std::cout << "string The la longitud es: " << longitud << std::endl; return 0; } ```
2. función `strcpy`:
- Rol: Copiar una cadena a otra cadena.
- Ejemplo de uso:
```c++
#include <iostream>
#include <cstring>
int main() { char fuente[] = "Hola"; char destino[20]; strcpy(destino, fuente); std::cout < < "La cadena copiada es: " << destino << std::endl; return 0; } ```
3. Función `strcmp`:
- Rol: Compara dos cadenas para determinar la igualdad.
- Ejemplo de uso:
```c++
#include <iostream>
#include <cstring>
int main() { char str1[] = "Hola"; char str2[] = "Mundo"; int result = strcmp(str1, str2) ; if (resultado == 0) { std::cout << "Las cadenas son iguales" << std::endl; } else { std::cout << "Las cadenas no son iguales" << std::endl ; } devuelve 0; } ```
4. función `atoi`:
- Rol: Convertir una cadena en un número entero.
- Ejemplo de uso:
```c++
#include <iostream>
#include <cstdlib>
int main() { char str[] = "12345"; int num = atoi(str); std::cout << "El entero convertido es : " << número << std::endl; retorno 0; } ```
5. La función `rand`:
- Rol: Generar números aleatorios.
- Ejemplo de uso:
```c++
#include <iostream>
#include <cstdlib>
#include <ctime>
int main() { srand(time(0)); // Establece la semilla para garantizar que el número aleatorio generado por cada ejecutar es diferente int randomNum = rand() % 100; // Genera un número aleatorio entre 0 y 99 std::cout << "El número aleatorio generado es: " << randomNum << std::endl; return 0; } `` `
6. Ejemplo de puntero:
```c++
#include <iostream>
int main() { int num = 10; int* ptr = # // Definimos un puntero a un número entero y lo apuntamos a la variable num std::cout << "El valor de num : " << num << std::endl; std::cout << "Accede al valor de num mediante un puntero: " << *ptr << std::endl; *ptr = 20; // Modifica el puntero apuntado al valor de la variable std::cout << "El valor del num modificado es:" << num << std::endl; return 0; } ```
7. Ejemplo de asignación de memoria dinámica:
```c++
#include <iostream>
int main() { int size; std::cout << "Ingrese el tamaño de la matriz: "; std::cin >> size; int*dynamicArray = new int[size ]; // Asigna dinámicamente una matriz de enteros for (int i = 0; i < size; i++) { dynamicArray[i] = i + 1; } std::cout << "Los elementos de la matriz son:"; for (int i = 0 ; i < size; i++) { std::cout <<dynamicArray[i] << " "; } std::cout << std::endl; delete[]dynamicArray; // libera la memoria asignada dinámicamente return 0; } ```
8. Ejemplo de operación de archivo:
```c++
#include <iostream>
#include <fstream>
int main() { std::ofstream file("data.txt"); // Crea un objeto de archivo llamado "data.txt" if (file. is_open( )) { file << "¡Hola mundo!\n"; file << "Este es un archivo de muestra.\n"; file.close(); std::cout << "Escritura del archivo completa." << std ::endl; } else { std::cout << "No se puede abrir el archivo." << std::endl; } return 0; } ```
9. Ejemplo de estructura de datos (lista vinculada):
```c++
#include <iostream>
estructura Nodo { int datos; Nodo* siguiente; }; int main() { Nodo* cabeza = nullptr; // 创建链表 for (int i = 1; i <= 5; i++) { Nodo* nuevoNodo = nuevo Nodo; nuevoNodo->datos = i; nuevoNodo->siguiente = cabeza; cabeza = nuevoNodo; } // 遍历链表 Nodo* actualNodo = cabeza; while (currentNode!= nullptr) { std::cout << currentNode->data << " "; NodoActual = NodoActual->siguiente; } std::cout << std::
// Libera la memoria de la lista enlazada
currentNode = head;
while (currentNode != nullptr) { Node* temp = currentNode; currentNode = currentNode->next; eliminar temp; } return 0; } ```
10. Ejemplo de algoritmo de clasificación (clasificación por burbujas):
```c++
#include <iostream>
void bubbleSort(int arr[], int tamaño) { for (int i = 0; i < tamaño - 1; i++) { for (int j = 0; j < tamaño - i - 1; j++) { if (arr[j] > arr[j + 1]) { // 交换元素 int temp = arr[j]; arreglo[j] = arreglo[j + 1]; llegada[j + 1] = temperatura; } } } } int principal() { int arreglo[] = {5, 2, 8, 12, 1}; int tamaño = tamaño de (arr) / tamaño de (arr [0]); bubbleSort(arr, tamaño); std::cout << "排序后的数组为:";
for (int i = 0; i < tamaño; i++) { std::cout << arr[i] << " "; } std::cout << std::endl; devolver 0; } ```
El código de muestra anterior es solo de referencia y el método de uso específico puede ser ligeramente diferente según el entorno de programación o los requisitos. Al aprender, se recomienda leer documentos y tutoriales relevantes y practicar para profundizar la comprensión y el dominio de las funciones.
Resumir
Los anteriores son solo algunos de los contenidos que registré en el proceso de aprendizaje del lenguaje de programación C/C++, y hay muchos otros puntos de conocimiento y habilidades esperando que aprendamos y exploremos. La programación es un proceso de progreso y crecimiento continuo, espero que todos puedan mantener su entusiasmo por aprender, acumular experiencia y mejorar sus capacidades de programación.
Si tiene alguna pregunta o desea compartir sus propias notas de estudio, deje un mensaje a continuación, ¡permítanos comunicarnos y progresar juntos!
Bienvenido a dar me gusta y coleccionar