¿Cómo aprender el lenguaje C?
Cómo aprender el lenguaje C
Hora: 2007-1-5 17:23:03 Autor: Liang Zhaoxin
Un día, debes completar un pregunta para encontrar el factorial 100, entonces trajiste la computadora más reciente, instalaste el último sistema operativo Windows Vista, luego te sentaste frente a ella y gritaste "Oye computadora, calcula el factorial de 100 para mí", la computadora dijo "ok , "espera un momento"; ¡Después de un rato, se sirvió un plato de champiñones y repollo! Jaja, la computadora no es un camarero. No responderá si la alimentas. Si realmente esperas un momento, ¡me temo que tendrás que esperar un momento más! Diez mil años después, la gente te llamará "Acantilado Wangfu".
Dado que el ordenador no es un servidor y no puede entender nuestras palabras, ¿cómo lo controlamos? Si finges ser sordo y mudo conmigo, te diré que te reprobaré al final del semestre. ¡Oh, serás honesto de inmediato! En cuanto a la computadora, ¿cómo puedo usarla para que me funcione? Sí, tenemos una herramienta poderosa, ¡el lenguaje C!
Bien, revisemos el escenario anterior:
Me pediste que calculara el factorial de 100, así que fui a la sala de computadoras, me subí a la computadora y escribí un programa:
(Participa en ppt...)
Ejecuta el programa, ¡oh, ya están los resultados!
Algunas personas piensan que ahora es la era de java y .net, ¿quién necesita todavía C y ensamblador? Quién sabe, Java y .net se basan en software y son sistemas establecidos para monopolizar el mercado. Es como cavar un hoyo con una pared dorada y pedirte que saltes. Todavía piensas que estás parado sobre los hombros de gigantes. , de hecho, se convirtió en la rana del pozo. Para convertirse en un verdadero programador y convertirse en un maestro programador, debe comenzar desde la máquina, desde la CPU hasta el sistema operativo y luego hasta el sistema de software. El reino de un maestro es el espejo después de la iluminación. Es magnífico, yo soy el programa. El programa soy yo.
Después de escucharme hablar sobre el reino de los maestros, te conmoviste mucho y dijiste: ¡Quiero estudiar mucho y aprender de los maestros! ¡Al día siguiente compré un montón de libros de MFC, VB, JAVA y .NET y me levanté a las cinco de la mañana para promocionarlos! Esto no es posible. Sólo hay una manera correcta de comenzar. ¡Para realizar el Gran Dao, esta es la única manera! ¡Estudiantes, comiencen con el lenguaje C y trabajen duro para aprender bien el lenguaje C!
El espectador Li Si dijo: ¡Esta persona es estúpida! Simplemente uso el mouse para arrastrar algunos controles y se convierte en un sistema de administración xxx. ¡Me temo que no podrás escribirlo en lenguaje C durante un año! Bueno, tengo que admitir que aquellos que dicen esto ya son esclavos de mS. No sé nada más. MFC en sí es una arquitectura cerrada. Si comienzas a aprender de MFC, solo formarás un modo de pensamiento cerrado, porque MS. Espera que muchas personas solo aprendan cosas superficiales y no se conviertan en maestros, por lo que recomienda encarecidamente las llamadas herramientas de desarrollo de programas visuales. Realmente hay muchas personas que están dispuestas a dejarse engañar y finalmente perder el rumbo. Digamos que no puede manejar el programa. Puede hacerlo, pero si el programa es más complicado y ocurre un problema, no podrá descubrir dónde está el problema.
Liang Zhaoxin, un gran tipo, dijo: "Simplemente no entiendo, ¿cómo escribir un programa con un mouse? En mi empresa, el teclado del maestro sigue sonando y el mouse suena ocasionalmente. El mouse del principiante sigue pitando y el teclado suena ocasionalmente, ¡pero la diferencia en su salario no es más del doble!”
El lenguaje C es la base de todos los principales sistemas operativos, incluidos Unix, Linux y Windows. Todo el kernel está desarrollado en lenguaje C (en algunos lugares se mezcla con lenguaje ensamblador). ¿No viste que las API de Windows son todas interfaces para funciones del lenguaje C? La gran mayoría de las aplicaciones Unix/Linux se desarrollan en lenguaje C; no hay muchas aplicaciones para Windows desarrolladas con API pura, y la mayoría de ellas dependen de algún tipo de Marco de Aplicación, como el llamado VC++, que en realidad se refiere a VC. IDE + lenguaje C++ + MFC (ahora el enfoque se ha desplazado a ATL, WTL), pero el software subyacente, como los servicios, redes y controladores de Windows, todavía se desarrolla en lenguaje C.
Los compiladores para varios lenguajes, incluida la máquina virtual Java, se desarrollan en lenguaje C. También se desarrollan en lenguaje C varios dispositivos integrados, como teléfonos móviles y PDA. El lenguaje C tiene una larga historia y su contenido no es de ninguna manera tan simple como se describe en "Programación en lenguaje C (segunda edición)" del profesor Tan Haoqiang; ese libro es solo un libro de enseñanza introductorio basado en las condiciones nacionales de China.
A los estudiantes siempre les gusta preguntar: ¿Qué idioma es mejor? ¿Qué idioma hay para que aprendas? Este tema se discute todos los días y nunca termina. De hecho, creo que lo que preocupa a todo el mundo no es más que qué idioma tiene más "perspectivas de dinero" y aprender qué idioma puede encontrar fácilmente un trabajo bien remunerado después de graduarse; yo pensé lo mismo en ese momento. Bueno, déjame decirte, si dominas el lenguaje C, ¡ve a Huawei y no desperdicies tu juventud en un pequeño estanque!
Bien, después de escuchar mis sinceros consejos, estás listo para comenzar con el lenguaje C y comenzar a escalar la montaña del maestro programador. Antes de partir, ¿qué necesitas preparar en tu bolso?
Lo primero que debes empacar en tu bolso y seguir adelante es el "formato estándar". Hay muchos libros de texto y libros de referencia que no prestan mucha atención al formato del programa. Los escritos son como montones de Al igual que la basura, esto también ha provocado una gran cantidad de código de desecho y código basura en los programas escritos por muchas personas ahora. Esto tiene mucho que ver con esos libros introductorios, y esos autores deben estar acostumbrados. venció al PP. Los programas comerciales reales están absolutamente estandarizados. El formato del programa escrito por Zhang San es aproximadamente el mismo que el de Li Si. Las reglas de nomenclatura para varios identificadores son las mismas; de lo contrario, nadie podrá entender el programa que usted escribió. Si nadie puede entender el código que escribes, es absolutamente basura. Si tiene que buscar en la basura durante mucho tiempo y encontrar oro a regañadientes, entonces es mejor no descartar dicho programa, sino reescribirlo para que la idea quede más clara. Por lo tanto, un formato estandarizado es la base para comenzar. Entonces, ¿qué incluye el formato de esta especificación? ¡Bastantes, hay que perseverar para hacerlo! Nombres de identificadores largos, sangría de código, un par de llaves que no excedan una pantalla, etc.
Lo segundo que hay que empacar es paciencia Como dice el refrán, si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas. Es imposible tener éxito sin un proceso relativamente mundano. Esto no sólo significa que hay que tener paciencia y ir paso a paso en el proceso de aprendizaje, sino que también habla de otro aspecto importante: la depuración del programa. La depuración es un aspecto importante en el proceso de escribir un programa. Si alguien puede escribir un programa de una vez, es increíble y no solo es una gran vaca, sino también el toro verde en el que monto. ¡Los mortales no son éticos! La depuración es un proceso por el que todo programa debe pasar. Mis compañeros me preguntan a menudo: Maestro, mi programa es completamente correcto, ¡lo copié del libro! ¿Por qué no puede funcionar? ¡Yo tampoco veo el problema! Si tienes alguna pregunta, puedes acudir a mí o a otros profesores. ¿A quién debe acudir el profesor? ¿Maestro Li? ¡Eso es ridículo! Tuve que sentarme y depurar. Para ser honesto, la depuración es muy aburrida, por lo que algunos estudiantes se quejaron de que operaba demasiado rápido y no entendían por qué hacía esto o aquello. Mi temperamento no era muy bueno y maldecía cuando. Me irrito. ¡Así que esto requiere que practiques tu propia fuerza interna!
Ahora que tienes estos dos, ¿estás listo para comenzar? Supongo que alguien ha dicho que el inglés y las matemáticas no son necesarios. Todo el mundo habla de estudiantes universitarios, ¡así que no hagas preguntas como ésta! Ya has pasado la mañana y la tarde estudiando inglés. No quiero llegar allí. El inglés para estudiantes de informática es súper simple, solo recuerda algo de vocabulario profesional y ¡listo! En cuanto a las matemáticas, no existe ninguna base científica para decir que si las matemáticas son buenas, ¡escribir programas es bueno! Tengo un compañero de clase que tiene una puntuación del 100% en matemáticas y solo puede escribir programas del nivel Hola mundo, ¡pero ahora tiene un doctorado en matemáticas! ¡Avergonzado! Como estudiante universitario y estudiante universitario de nuestra especialidad, ¡estamos completamente equipados con los conocimientos matemáticos necesarios para escribir programas! Así que esto no es de lo que tenemos que preocuparnos, ¿Listo? ¡Vamos!
El primer paso es, ¿qué debemos aprender? ¡Método del palo para golpear al perro! Jaja
Un gran hombre dijo una vez: "La repetición de la autoridad es el único camino hacia la madurez". Este es el enfoque de pararse sobre los hombros de gigantes. Lo primero que deben aprender las personas que practican artes marciales. todo tipo de rutinas, por ejemplo, el manejo de la espada a prueba de maldades, solo así podrás dominarlo y crear una secta. También deberíamos aprender a escribir programas de esta manera, este es un atajo que puede ayudarte a llegar más lejos.
¡Lee un libro, lee un buen libro! Lo que está escrito en el libro está escrito por predecesores con décadas de experiencia. Leer diez libros equivale a absorber décadas de habilidades de sus predecesores, y su fuerza interna también aumentará rápidamente con un Jiazi.
:) Por supuesto, debes leer buenos libros. Sólo los buenos libros son nutritivos. Debes leer miles de libros y programar como un dios; la lectura aburrida es muy deprimente y puede convertirse fácilmente en un fósil. Hoy en día, muchos libros utilizan el código fuente para explicar los problemas. El código fuente es como una animación o una presentación de diapositivas, que muestra los movimientos del libro uno por uno. Se puede decir que la mayor parte de la experiencia del maestro proviene del código, y finalmente se convierte en código fuente y se muestra frente a todos. Ingrese los programas del libro uno por uno (usando el teclado, use los dedos) en el. computadora, compilar y ejecutar. Este paso de entrada manual no se puede omitir. Hoy en día, muchos libros tienen códigos fuente de soporte. Muchos estudiantes o adultos son inteligentes al estudiar, copiar el código fuente directamente, compilar y ejecutar.
Por supuesto, cuando te pido que ingreses a un programa, no te estoy pidiendo que practiques mecanografía. Puedes juzgar la calidad del programa durante el proceso de ingreso. Hay muchos códigos repetidos, entonces al menos este programa La estructura no es buena, si es pobre, cambiará, y si cambia, será general. ¿No es genial?
Por supuesto, he perdido mucho tiempo en programación, mis habilidades de mecanografía también han mejorado a un nivel superior, puedo escribir más rápido en el teclado y ¡mi salario también ha aumentado! ^_^
Sin embargo, poder escribir rápidamente no significa que su programa sea bueno. De lo contrario, la escuela solo necesita entregar una copia del software de mecanografía de contacto a cada estudiante después de cuatro años de graduación. ¡Todos los estudiantes serán programadores ahora!
Bien, ingresó un programa en la computadora, ejercitó los músculos de su mano y obtuvo resultados, y está feliz tanto física como mentalmente. ¿Está satisfecho? Eso todavía está lejos de ser un maestro. Para convertirte en un maestro, ¡aún necesitas ejercitar los músculos de tu cerebro! Tome su bolígrafo, tome su papel y use su cerebro, conocido como la máquina más sofisticada del mundo, para ejecutar el programa que ingresa, registrar los valores de las variables en diferentes tiempos de ejecución, registrar las ramas en ejecución. del programa, y finalmente descubrí que este programa ha sido diseccionado por usted en papel, ¡y creo que también ha sido disecado en su corazón! Este es el núcleo del acceso directo. Debe recordar que ingresar el programa no significa que se ejecute correctamente. Debe leer el código, usar lápiz y papel como herramienta auxiliar y tomar notas. Por supuesto, si eres un genio, tápate los oídos, ¡no estás dentro del alcance de nuestra discusión!
¿Por qué es importante este paso?
Cuando empezaste a aprender, ¿tuviste la sensación de que si te pidieran que escribieras un programa, por dónde empezarías? ¿Frente? ¿más tarde? ¿arriba? ¿bajo? Para resolver este problema, ¿cómo debo escribir mi programa? Me rascaba la cabeza y me rascaba la cabeza, era muy molesto, así que simplemente me fui a dormir y dejé de escribir. Verás, ¡este tipo de comportamiento será castigado por PP!
Cuando practicas artes marciales, siempre necesitas repetir los movimientos del maestro antes de poder tener tus propios movimientos, así que comencemos repitiendo los programas escritos por otros y luego escribamos nuestros propios programas.
¡Sigue este método y seguirás a la organización en el camino a Roma!
A continuación, tienes que irte. ¿Cómo llegarás a Roma si no te vas? ¡Aplica los métodos de programación que aprendiste a los programas que escribes!
Un día ves un problema aquí y tienes una idea, ¿qué debes hacer? ¡Sube a la computadora y pelea con el teclado! ¡Para, para! Haz una pausa por un momento. Antes de subirte a la computadora, no olvides tu lápiz y papel. Anota con valentía tus pensamientos. Si no puedes escribirlos, no vayas a la sala de computadoras y desperdicies. ¡El dinero que tus padres ganaron con tanto esfuerzo!
Por supuesto, no puedes escribir al azar. ¿Cómo se puede llamar que las cosas que escribes no son aleatorias? ¡La práctica es el único criterio para probar la verdad! Usa tu cerebro para ejecutar un lado. ¿No se llama "unidad entre humano y programa"? , ¡eso es todo! ¡Para aprender artes marciales, debes aprender artes marciales incomparables! Aunque se dice que es el más sofisticado, en realidad el cerebro humano todavía no es tan preciso como una computadora. Si tu cerebro puede ejecutarlo más o menos, entonces está bien, trae un formato estandarizado y paciencia, y ve a la computadora. !
Naturalmente, decimos que TC está un poco deprimido cuando se enfrenta a la interfaz de personajes todo el día. ¡Todos están acostumbrados a Windows, y el Centro de diseño de conceptos para clientes de Microsoft no es solo un alarde! Las ventanas son muy bonitas y coloridas. Cuando hayas alcanzado mi nivel de cultivo y tengas que escuchar el talento de la Ópera de Pekín para escribir programas, por supuesto tendrás que utilizar un entorno de desarrollo integrado en Windows.
Pero para todos, ahora no, Windows es muy peligroso, ¡los programadores deberían volver a TC!
TC tiene al menos una ventaja: puede enseñarnos el hábito de usar combinaciones de teclas y el hábito de usar la programación con el teclado. Recuerde lo que acaba de decir Liang: "¿Cómo programar con el mouse?" Algunos estudiantes tienen que plantear preguntas. Nací en los años 80 o incluso en los 90. ¿Todavía me dejas enfrentar una interfaz de entrada y salida tan aburrida? ¡Hay una brecha generacional entre tú y yo! Espero tener métodos interactivos más ricos y atractivos. Esta es una buena pregunta. ¡También hay gráficos en lenguaje C, que pueden satisfacer plenamente el deseo de todos de educar y divertirse! Echemos un vistazo a este programa. ¡Es muy simple! ¡Simplemente crea una onda sinusoidal con un ciclo en la pantalla!
(Ver ppt...)
¿Es muy bueno el efecto de carrera? Cuando aprenda estructuras de datos, podrá generar árboles y gráficos como este. ¡Puede hacerlo mejor en muchos lugares!
Bien, aquí básicamente hemos resuelto algunos problemas metodológicos al aprender programación en lenguaje C. En cuanto al proceso de aprendizaje específico, si quieres que te diga aquí cómo aprender punteros. ¿Cómo aprender funciones? Entonces no hablaré más de lo que enseña el profesor, o abriré un tema especial llamado "Cómo aprender bien los punteros", por supuesto, si estás dispuesto a discutir conmigo la esencia y las aplicaciones avanzadas de los punteros, después de clase. , después de clase!
¡Ahora sí que nos toca hablar de la última pregunta! La proporción de niñas en nuestra especialidad es mayor que en otras especialidades de ingeniería. No sé por qué escuchamos a menudo las siguientes declaraciones: 1. Soy una niña, por lo que no soy apta para escribir programas. Más extrovertido, por lo que no soy apto para ello. ¡Sentarme y escribir programas tranquilamente!
¿La personalidad extrovertida no es apta para escribir programas? Cuando me miras, ¿crees que soy introvertido? Los programadores también tienen una gran necesidad de pensamiento divergente y extrovertido. Old Bi, el hombre más rico del mundo, dijo que cuando recluta programadores, está más dispuesto a reclutar personas que originalmente estudiaron física, porque el pensamiento de las personas que estudian física puede ser de. el extremo (universo) hasta lo muy pequeño (atómico). Considerándolo todo, decir que los extrovertidos no son aptos para la programación es una excusa perezosa y una interfaz para encubrir sus motivos ocultos. ¡Loco PP!
¿Por qué las chicas no son aptas para programas de escritura? Conozco una razón: ¡no es bueno para la piel! ¡Lo sabrás con solo mirar mi rostro lleno de vicisitudes de la vida! Aparte de eso, ¿hay otras razones? Los científicos británicos han demostrado desde hace mucho tiempo que las diferencias entre hombres y mujeres no son en absoluto lo que la gente imagina. ¡Las mujeres son mejores que los hombres en muchos aspectos! ¡Piense en la sociedad matriarcal del pasado y en las niñas Hui'an de ahora!
¡He visto que el segundo departamento de I+D de una empresa que cotiza en bolsa era todo femenino! , desde ingenieros de software hasta ingenieros de hardware y gerentes de departamento, todas son mujeres y su desempeño no es inferior al de otros departamentos de I + D. Esta empresa está en Hunan, ¡no soy tonta!