Quiero aprender C++ por mi cuenta, ¿por dónde debo empezar?
En realidad, no hay muchas sintaxis estándar de C, pero muchos compiladores de C han agregado muchas funciones nuevas para satisfacer las necesidades del trabajo real. Estas no son necesarias para aquellos que ya han comenzado a dominarlas.
1. Variables en lenguaje C. Mucha gente conoce las variables, siempre que las hayan estudiado, sabrán exactamente lo que está pasando. Pero no conocemos el espacio asignado para las variables en las operaciones reales, como un byte para char, 4 bytes para int y 2 bytes para abreviar, y habrá diferencias sutiles en diferentes sistemas operativos. Además, los punteros suelen tener 4 bytes.
Del mismo modo, el tipo de variables también está estrechamente relacionado con la asignación del espacio. Para entender la esencia de (casting), creo que debes saber que sí, no es más que acceder al espacio de una manera diferente. Entonces ¿cuál es el valor?
La alineación de direcciones, la palabra clave align, se utiliza para acceder a la memoria más rápido. Al igual que el endianismo, esto está relacionado con la memoria y, por supuesto, con la CPU.
2. Ésta es la pregunta más problemática y a menudo confusa. De hecho, un puntero es una dirección. Por conveniencia y para ahorrar espacio, definimos un puntero, dejamos que apunte a la dirección a la que queremos acceder y luego realizamos operaciones. Los punteros también se escriben y, por lo general, el tipo que definimos es el mismo que el de la variable a la que se accederá.
3. Las funciones son códigos de función que operan sobre variables. Las variables corresponden a los objetos a los que desea acceder y eventualmente se escribirán en los registros de la computadora. Por lo tanto, es necesario tener una comprensión más profunda de los cálculos de registro (función) del chip. Por ejemplo, cómo utilizar algunos registros de la serie Intel8086 depende de las especificaciones relevantes. La función básica es proporcionar la dirección a la que desea acceder y luego leer y escribir valores en la dirección.
Gracias por la función printf(). Esta función puede decirte muchas cosas, como sizeof(long).
4. Un punto muy importante es la idea de proceso. De hecho, es muy sencillo mirar y leer una especificación. La clave es cómo etiquetar la funcionalidad de su código. Esto requiere pensar, que es lo más básico.
De hecho, es muy simple: simplemente busque la dirección correcta y luego escriba la función (especificación) que desea en la dirección.
5. Todos los dispositivos excepto la CPU no funcionarán, pero no la memoria. Tan pequeño como una caja registradora, tan grande como un disco duro. Comprender la memoria es importante. De hecho, nada es importante. La CPU recupera instrucciones y datos de la memoria. Por lo tanto, es necesario comprender la memoria, la estructura básica, los principios de diseño y, si es posible, algunos diagramas de tiempo y diagramas esquemáticos simples. Los conceptos básicos son nodos PN, unidades de almacenamiento de celdas, cadenas tipo margarita, etc.
Además, también debes conocer los sistemas de archivos más utilizados, que generalmente se dividen en fat, ext2, cdfs, ntfs, etc. Esto ayuda a comprender cómo se gestiona la memoria. Leer, escribir, abrir y cerrar el sistema de archivos son funciones necesarias.
La memoria es un tipo especial de memoria. Por lo general, solo se usa en tiempo de ejecución para un mejor rendimiento. Existe un concepto en la memoria que en realidad utiliza el sistema operativo, llamado reasignación de direcciones, porque la dirección en la memoria externa y la dirección en la memoria pueden ser diferentes. Esto requiere reasignación de direcciones. Puede regresar y leer el libro de texto del sistema operativo.
Además, también debes dominar funciones como malloc free para asignar memoria.
6. Solo una oración, coloque el código que desea en un lugar específico y luego el programa de inicio copiará su código en la memoria, lo reasignará y podrá comenzar a ejecutar su sistema.