¿Qué es el lenguaje C?
Capítulo 1: Introducción al lenguaje C.
La historia del desarrollo del lenguaje C
El lenguaje C surgió a principios de la década de 1970. En 1978, AT & t) Bell Labs lanzó oficialmente el lenguaje C. Al mismo tiempo, B.W. Kernighan y D.M. Ritchit fueron coautores del famoso libro "Lenguaje de programación C". A menudo llamado "K&R", algunos lo llaman estándar "K&R". Sin embargo, K&R no definió un lenguaje C estándar completo, y luego el Instituto Nacional Estadounidense de Estándares desarrolló un estándar de lenguaje C basado en esto, que se publicó en 1983. A menudo llamado ansi C.
El lenguaje de programación más destacado de nuestro tiempo.
El lenguaje C inicial se utilizó principalmente en sistemas UNIX. Debido a las poderosas funciones y diversas ventajas del lenguaje C, la gente se da cuenta gradualmente de esto. En la década de 1980, C comenzó a ingresar a otros sistemas operativos y pronto se usó ampliamente en varias computadoras grandes, medianas, pequeñas y microcomputadoras. Convirtiéndose en uno de los mejores lenguajes de programación de nuestro tiempo.
Características del lenguaje C
El lenguaje C es un lenguaje estructurado. Tiene una jerarquía clara, programas fáciles de organizar de forma modular y es fácil de depurar y mantener. El lenguaje C tiene fuertes capacidades de expresión y procesamiento. No solo tiene operadores y tipos de datos ricos, sino que también facilita la implementación de varias estructuras de datos complejas. También puede acceder directamente a la dirección física de la memoria y operar a nivel de bits. Debido a que el lenguaje C implementa operaciones de programación de hardware, el lenguaje C integra las funciones de los lenguajes de alto nivel y de bajo nivel. Se puede utilizar para desarrollar software de sistema y software de aplicación. Además, el lenguaje C también tiene las características de alta eficiencia y gran portabilidad. Por lo tanto, se ha trasplantado ampliamente a varias computadoras, formando así varias versiones del lenguaje C.
Versión en lenguaje C
Los lenguajes C más populares son los siguientes:
Microsoft C o Microsoft C
Borland Turbo C o Turbo C
AT&T. Coeficiente de temperatura
Estas versiones del lenguaje C no solo implementan el estándar ANSI C, sino que también realizan algunas extensiones sobre esta base para hacerlo más conveniente y completo.
Lenguaje de programación orientado a objetos
Basado en C, Bjarne Strou-strup de Bell Labs lanzó C++ en 1983. C++ amplía y mejora aún más el lenguaje C y se convierte en un lenguaje de programación orientado a objetos. Las últimas versiones populares de C++ son Borland C++ 4.5, Symantec C++ 6.1 y Microsoft VisualC++ 2.0. C++ presenta algunos conceptos más profundos. Estos conceptos orientados a objetos compatibles con C++ pueden asignar fácilmente el espacio del problema directamente al espacio del programa, lo que proporciona a los programadores una forma de pensar y un método de programación diferentes a los de la programación estructurada tradicional. Por lo tanto, también aumenta la complejidad de todo el idioma y dificulta su dominio.
c y c++
Pero C es la base de C++, y el lenguaje C++ y el lenguaje C son compatibles en muchos aspectos. Por lo tanto, si domina el lenguaje C y estudia más C++, puede utilizar la sintaxis familiar para aprender lenguajes orientados a objetos, logrando así el objetivo de obtener el doble de resultado con la mitad de esfuerzo.
Características estructurales del programa fuente C
Para ilustrar las características estructurales del programa fuente en lenguaje C, primero observe el siguiente programa. Estos programas van de superficial a profundo, reflejando las características de la estructura del programa fuente del lenguaje C. Aunque no se presenta el contenido relevante, podemos aprender las partes básicas y el formato de escritura de un programa fuente en C a partir de estos ejemplos. Main()
{
Printf("¡Hola, www.vcok.com, mundo del lenguaje C! \ n "
}
);Main es el nombre de la función principal, lo que indica que se trata de una función principal. Cada programa fuente en C debe tener una y sólo una función principal (función principal). Declaración de llamada de función, la función de la función printf es enviar el contenido que se enviará al monitor para su visualización. La función printf es una función estándar definida por el sistema y se puede llamar directamente en el programa.
#includes
#includes
main()
{
Doble x, s; p>
p>
printf("Ingrese el número:\ n ");
scanf("%lf ", & ampx);
s = sin( x);
p>
printf("El seno de % lf es %lf\n ", x, s
}
Cada línea de comentarios
Include El archivo se llama archivo. Archivo con extensión de comando. También llamado archivo de cabecera o archivo de cabecera.
Definir dos variables reales para usar en programas posteriores.
Mostrar información del mensaje
Obtenga un número real x del teclado
Encuentre el seno de X y asígnelo a la variable s.
Mostrar resultados de ejecución del programa
Fin de la función principal
La función del programa es ingresar un número x desde el teclado, encontrar el valor seno de x y luego generar el resultado. Las dos líneas antes de main() se denominan comandos de preprocesamiento (ver más abajo). Hay varios otros comandos de preprocesamiento. La inclusión aquí se denomina comando de inclusión de archivo, lo que significa agregar corchetes angulares "" o comillas
Cabe señalar que el lenguaje C estipula que las funciones scanf y printf pueden omitir el comando de inclusión de su encabezado archivos. Entonces, en este caso, también puedes eliminar el comando de inclusión #include en la segunda línea. Asimismo, en el Ejemplo 1.1, se utiliza la función printf y se omite el comando include.
En el cuerpo de la función principal del ejemplo, se divide en dos partes, una es la parte de explicación y la otra es la parte de ejecución. Descripción se refiere al tipo de descripción de la variable. En el ejemplo no se utilizan variables, por lo que no hay explicación. El lenguaje C estipula que todas las variables utilizadas en el programa fuente deben interpretarse antes de su uso; de lo contrario, se producirán errores. Esta es una característica de los lenguajes de programación compilados de alto nivel, que es diferente de los lenguajes BASIC interpretados. La parte de interpretación es una parte importante de la estructura del programa fuente en C. En este ejemplo, se utilizan dos variables x, s para representar las variables independientes de entrada y el valor de la función sin. Debido a que la función sin requiere que estas dos variables sean tipos de coma flotante de doble precisión, el especificador de tipo double se utiliza para describir estas dos variables. Las cuatro líneas después de la parte de descripción o la parte de declaración de ejecución son utilizadas por la parte de ejecución para completar la función del programa. La primera línea de la parte de ejecución es la declaración de salida, que llama a la función printf para generar una cadena de aviso en la pantalla y requiere que el operador ingrese el valor de la variable independiente x. La segunda línea es para ingresar una declaración, llame a. función scanf y acepta el número ingresado en el teclado almacenado en la variable x, la tercera línea llama a la función sin y envía el valor de la función a la variable S. La cuarta línea usa la función printf para generar el valor de la variable S. , que es el valor del seno de x. El programa finaliza.
printf("Ingrese el número:\ n ");
scanf("%lf ",' c 10f 10 & x
s = sin); (x);
printf("El seno de % lf es %lf\n", "C10F10x, s");
Al ejecutar este programa, la pantalla mostrará el mensaje El número de entrada de cadena se completa con la primera línea de la parte de ejecución. Cuando se le solicita, el usuario escribe un número en el teclado, como 5, presiona la tecla Enter y recibe el resultado del cálculo en la pantalla.
Funciones de entrada y salida
Las funciones de entrada y salida scanf y printf se utilizan en los dos primeros ejemplos y las presentaremos en detalle en el Capítulo 3. Aquí, presentamos brevemente su formato para su uso a continuación. Scanf y printf se denominan función de entrada de formato y función de salida de formato respectivamente. Significa ingresar y generar valores en un formato específico. Por lo tanto, las tablas de parámetros de las dos funciones entre paréntesis se componen de las dos partes siguientes: "Cadena de control de formato de la tabla de parámetros es una cadena que debe estar entre comillas dobles, lo que indica los datos de entrada y salida". tipos. En el Capítulo 3 se pueden encontrar representaciones de formato de varios tipos. En la función printf, los caracteres de control sin formato también pueden aparecer en la cadena de control de formato y luego el texto original se imprime en la pantalla. El número de entradas o salidas se indica en la tabla de parámetros. Cuando haya varias cantidades, sepárelas con comas.
Por ejemplo:
printf("El seno de %lf es %lf\n ",x,s);
donde %lf es el carácter de formato, lo que significa que se trata como un número doble de coma flotante de precisión. Aparece dos veces en la cadena de formato, correspondiente a las dos variables X y s. Los caracteres restantes son caracteres sin formato y se muestran en la pantalla tal como están.
int max(int a, int b);
main(){
int x, y, z
printf ("Ingrese dos números:\n"); scanf("%d%d",&x&y);
z=max(x,y);
printf("maxmum=%d ",z);
}
int max(int a, int b){
Si (a & gtb) devuelve a; de lo contrario, devuelve b;
}
La función de esta función es ingresar dos números enteros y generar el más grande.
/*Descripción de la función*/
/*Función principal*/
/*Descripción de la variable*/
/*Entrada x , valor y*/
/*Llamar función máxima*/
/*Salida*/
/*Definir función máxima*/
/*Devolver el resultado a la función principal*/
La función del programa en el ejemplo anterior es que el usuario ingresa dos números enteros y el número mayor se genera después de ejecutar el programa. Este programa consta de dos funciones, función principal y función máxima. Existen relaciones paralelas entre funciones. Se pueden llamar otras funciones desde la función principal. La función de la función max es comparar dos números y luego devolver el número mayor a la función principal. La función Max es una función definida por el usuario. Entonces la instrucción se da en la función principal (tercera línea del programa). Se puede ver que en la parte de descripción del programa, no solo puede haber descripciones de variables, sino también descripciones de funciones. Los detalles de esta característica se presentarán en el Capítulo 5. El contenido encerrado por /* y */ después de cada línea del programa es la parte del comentario y el programa no ejecuta la parte del comentario.
El proceso de ejecución del programa en el ejemplo anterior es el siguiente: Primero, se muestra una cadena de aviso en la pantalla, solicitando al usuario que ingrese dos números. Después de ingresar al automóvil, la declaración de la función scanf recibe estos dos números y los envía a las variables X e Y, y luego llama a la función max, pasando los valores de X e Y a los parámetros A y B de la función max. Compare los tamaños de a y b en la función max, devuelva el más grande a la variable z de la función principal y finalmente genere el valor de z en la pantalla.
Características estructurales del programa fuente C
1. El programa fuente en lenguaje C puede estar compuesto por uno o más archivos fuente.
2. Cada archivo fuente puede estar compuesto por una o más funciones.
3. No importa de cuántos archivos esté compuesto un programa fuente, este tiene y tiene una sola función principal, es decir, la función principal.
4. Puede haber comandos de preprocesamiento en el programa fuente (el comando de inclusión es solo uno de ellos). Los comandos de preprocesamiento generalmente deben colocarse delante del archivo fuente o del programa fuente.
5. Cada descripción y declaración debe terminar con un punto y coma. Sin embargo, los comandos de preprocesamiento, encabezados de funciones y llaves "}" no pueden ir seguidos de un signo más.
6. Los identificadores y palabras clave deben estar separados por al menos un espacio. Si hay separadores obvios, también puedes dejar de agregar espacios para separarlos.
Reglas a seguir al escribir programas
Desde la perspectiva de una escritura clara, fácil de leer, comprender y mantener, se deben seguir las siguientes reglas al escribir programas:
1. Una descripción o declaración ocupa una línea.
2. La parte encerrada por {} generalmente representa una determinada estructura jerárquica del programa. {} generalmente está alineado con la primera letra de la declaración estructural y ocupa una línea separada.
3. Las declaraciones o explicaciones de nivel inferior se pueden escribir con sangría de unas pocas celdas en comparación con las declaraciones o explicaciones de nivel superior. Para que el programa se vea más claro y aumente la legibilidad. Al programar, debemos esforzarnos por seguir estas reglas para desarrollar un buen estilo de programación.
Juego de caracteres del lenguaje C
Los caracteres son los elementos más básicos del lenguaje. El conjunto de caracteres del lenguaje C consta de letras, números, espacios, signos de puntuación y caracteres especiales.
También se pueden utilizar caracteres chinos u otros símbolos gráficos representables en constantes de caracteres, constantes de cadena y comentarios.
1. Hay 26 letras minúsculas A ~ Z * * * y 26 letras mayúsculas A ~ Z * * *.
2. Números 0 ~ 9 * * * 10
3. Caracteres de espacio, caracteres de tabulación, caracteres de nueva línea, etc. Llamados colectivamente caracteres de espacios en blanco. Los espacios sólo se aplican a constantes de caracteres y constantes de cadena. Cuando aparecen en otro lugar, sirven sólo como un rango y el compilador los ignora. Por lo tanto, usar espacios en un programa no afectará la compilación del programa, pero usar espacios en lugares apropiados del programa aumentará la claridad y legibilidad del programa.
4. Signos de puntuación y caracteres especiales
Vocabulario del lenguaje C
El vocabulario utilizado en el lenguaje C se divide en seis categorías: identificadores, palabras clave, operadores, delimitadores. , constantes, comentarios, etc.
1. Identificadores
Los nombres de variables, nombres de funciones y etiquetas utilizados en el programa se denominan colectivamente identificadores. Excepto los nombres de las funciones de la biblioteca, que están definidos por el sistema, el resto los define el usuario. c estipula que un identificador solo puede ser una cadena que consta de letras (a ~ z, a ~ z), números (0 ~ 9) y guiones bajos (). El primer carácter debe ser una letra o un guión bajo.
Los siguientes identificadores son legales:
a, x, 3x, LIBRO 1, suma5
Los siguientes identificadores son ilegales:
Los 3 comienzan con un número.
Caracteres ilegales en s*T *
-3x comienza con un signo menos.
Bowy-1 contiene el carácter ilegal - (signo menos).
Al utilizar identificadores, también debe prestar atención a los siguientes puntos:
(1) El estándar C no limita la longitud de los identificadores, pero se ve afectado por varias versiones de C. Sistemas de compilación de lenguajes y limitaciones específicas de la máquina. Por ejemplo, en una determinada versión de C, se estipula que los primeros ocho bits de un identificador son válidos. Cuando los primeros ocho bits de dos identificadores son iguales, se considera que son el mismo identificador.
(2)En identificadores el caso es diferente. Por ejemplo, libro y LIBRO son dos identificadores diferentes.
(3) Aunque los programadores pueden definir los identificadores de forma arbitraria, los identificadores son símbolos utilizados para identificar una determinada cantidad. Por lo tanto, el nombre debe tener el significado correspondiente tanto como sea posible, para que pueda leerse y entenderse, y pueda "simplemente hacer lo que el nombre implica".
2. Palabras clave
Las palabras clave son cadenas con significados específicos especificados por el lenguaje C, que también se conocen comúnmente como palabras reservadas. Los identificadores definidos por el usuario no deben ser lo mismo que las palabras clave. Las palabras clave del lenguaje C se dividen en las siguientes categorías:
(1) Descriptor de tipo
Se utiliza para definir y explicar el tipo de variables, funciones u otras estructuras de datos. Como int, doble, etc. Usado en el ejemplo anterior
(2) El definidor de declaraciones
se usa para expresar la función de una declaración. El If else usado en el ejemplo 1.3 es el definidor de la declaración condicional.
(3) Palabra de comando de preprocesamiento
Se utiliza para representar comandos de preprocesamiento. Como se usó en el ejemplo anterior, incluya.
3. Operador
El lenguaje C contiene bastantes operadores. Los operadores, variables y funciones juntos forman expresiones que representan varias funciones aritméticas. Un operador consta de uno o más caracteres.
4. Delimitador
Hay dos delimitadores utilizados en lenguaje C: coma y espacio. Las comas se utilizan principalmente en descripciones de tipos y listas de parámetros de funciones para separar variables. Los espacios se utilizan a menudo como separadores entre palabras en oraciones. Debe haber más de un espacio entre las palabras clave y los identificadores; de lo contrario, se producirán errores de sintaxis, como int a; al escribir intac, el compilador tratará a inta como un identificador y el resultado inevitablemente será incorrecto.
5. Constantes
Las constantes utilizadas en el lenguaje C se pueden dividir en constantes numéricas, constantes de caracteres, constantes de cadena, constantes simbólicas, caracteres de escape, etc. El Capítulo 2 lo presentará en detalle.
6. Explicación
El etiquetador en lenguaje C es una cadena que comienza con "/*" y termina con "*/". Entre "/*" y "*/" hay comentarios. Cuando se compila el programa, no se procesan comentarios. Los comentarios pueden aparecer en cualquier parte del programa. Los comentarios se utilizan para indicar o explicar el significado de un programa al usuario.
En el depurador, las declaraciones que no se utilizan temporalmente también se pueden incluir en comentarios, de modo que la traducción se omitirá y no se procesará, y los comentarios se eliminarán después de la depuración.