Red de conocimiento informático - Computadora portátil - ¿Qué es el lenguaje C y cómo lo aprendo?

¿Qué es el lenguaje C y cómo lo aprendo?

El lenguaje C fue diseñado e inventado por Dennis Ritchie en Estados Unidos en 1972, y se utilizó por primera vez en la computadora DEC PDP-11 con el sistema operativo UNIX. Evolucionó a partir del primer lenguaje de programación BCPL (Basic Combind Programming Language). En 1970, Ken Thompson de AT&T Bell Labs diseñó un lenguaje más avanzado llamado B basado en el lenguaje BCPL, que finalmente condujo a la llegada del lenguaje C.

Con la creciente popularidad de las microcomputadoras, han aparecido muchas versiones en lenguaje C. Dado que no existe un estándar unificado, existen algunas inconsistencias entre estos lenguajes C. Para cambiar esta situación, el Instituto Nacional Estadounidense de Estándares (ANSI) desarrolló un conjunto de estándares ANSI para el lenguaje C, que se convirtió en el estándar actual del lenguaje C.

El lenguaje C se ha desarrollado muy rápidamente y se ha convertido en uno de los lenguajes más populares, principalmente debido a sus potentes funciones. Muchos software de sistemas famosos, como DBASE III PLUS y DBASE IV, están escritos en lenguaje C. El uso del lenguaje C más algunas subrutinas del lenguaje ensamblador puede demostrar mejor las ventajas del lenguaje C que se escriben con PC-DOS, WORDSTAR, etc. En resumen, el lenguaje C tiene las siguientes características:

1. C es un lenguaje de nivel medio

Combina las estructuras y declaraciones básicas de los lenguajes de alto nivel con La practicidad de los lenguajes de bajo nivel. El lenguaje C puede operar en bits, bytes y direcciones al igual que el lenguaje ensamblador, y estas tres son las unidades de trabajo más básicas de la computadora.

2. C es un lenguaje estructural

La característica distintiva de un lenguaje estructural es la separación de código y datos, es decir, cada parte del programa es independiente entre sí excepto para el necesario intercambio de información. Este enfoque estructurado puede hacer que la jerarquía del programa sea clara y fácil de usar, mantener y depurar. El lenguaje C se proporciona a los usuarios en forma de funciones. Estas funciones se pueden llamar fácilmente y tienen una variedad de bucles y declaraciones condicionales para controlar el flujo del programa, lo que hace que el programa esté completamente estructurado.

3. El lenguaje C es completamente funcional

El lenguaje C tiene una variedad de tipos de datos e introduce el concepto de punteros, lo que puede hacer que el programa sea más eficiente. Además, el lenguaje C también tiene potentes funciones gráficas y admite una variedad de monitores y controladores. Además, la función de cálculo y la función de juicio lógico también son relativamente poderosas y pueden lograr propósitos de toma de decisiones.

4. El lenguaje C tiene una amplia gama de aplicabilidad

Otra ventaja sobresaliente del lenguaje C es que es adecuado para múltiples sistemas operativos, como DOS y UNIX, y también es adecuado para múltiples modelos de computadora.

Turbo C es un producto de la American Borland Company, una gran empresa especializada en desarrollo e investigación de software. La empresa ha lanzado sucesivamente un conjunto de software de la serie Turbo, como Turbo BASIC, Turbo Pascal y Turbo Prolog, que son muy populares entre los usuarios. La compañía lanzó por primera vez el producto Turbo C 1.0 en 1987, que utilizaba un entorno de desarrollo integrado completamente nuevo, que utilizaba una serie de menús desplegables para integrar la edición de texto, la compilación del programa, la conexión y la ejecución del programa, lo que facilitó enormemente el desarrollo del programa. . En 1988, Borland Company lanzó la versión Turbo C1.5, que agregó una biblioteca de gráficos y una biblioteca de funciones de ventana de texto, mientras que la compañía publicó Turbo C 2.0 en 1989. Turbo C2.0 agrega una función de verificación de errores basada en el entorno de desarrollo integrado original y puede generar directamente archivos .COM en modo Tiny (los datos, el código y la pila están en la misma memoria de 64K).

También se pueden simular coprocesadores matemáticos (que admiten 8087/80287/80387, etc.).

Borland lanzó más tarde el paquete de software de programa orientado a objetos Turbo C, que heredó y desarrolló el entorno de desarrollo integrado de Turbo C 2.0 e incluyó las ideas básicas y los métodos de diseño de la orientación a objetos.

En 1991, para adaptarse a la versión Windows 3.0 de Microsoft, Borland Company actualizó Turbo C, es decir, también se lanzó el producto de nueva generación de Turbo C, Borlandc C.

1.3.2 Requisitos de configuración básica para Turbo C 2.0

Turbo C 2.0 puede ejecutarse en microcomputadoras de la serie IBM-PC, incluidas computadoras compatibles con XT, AT e IBM. En este momento, se requiere DOS 2.0 o superior y se requieren al menos 448 K de RAM. Puede ejecutarse en cualquier monitor monocromático o en color de 80 columnas. La compatibilidad con chips de coprocesador matemático también permite la simulación de punto flotante, lo que acelerará la ejecución del programa.

1.3.3 Introducción al contenido de Turbo C 2.0

Turbo C 2.0 tiene seis disquetes de baja densidad (o dos disquetes de alta densidad).

La siguiente es una breve introducción a los archivos principales de Turbo C 2.0:

Archivo del programa de instalación INSTALL.EXE

Compilación integrada TC.EXE

TCINST.EXE Programa de instalación de configuración del entorno de desarrollo integrado

Archivo de ayuda TCHELP.TCH

THELP.COM Programa residente de lectura para TCHELP.TCH

README Información sobre archivos Turbo C

Programa de conversión de archivos de configuración TCCONFIG.EXE

Herramienta de gestión de proyectos MAKE.EXE

Compilación de línea de comandos TCC.EXE

TLINK EXE Turbo C. conector de serie

TLIB.EXE Herramienta de administración de biblioteca de la serie Turbo C

C0?.OBJ código de inicio de modo diferente

C?.LIB biblioteca de tiempo de ejecución de modo diferente

Biblioteca de gráficos GRAPHICS.LIB

Biblioteca de simulación EMU.LIB 8087

Biblioteca FP87.LIB 8087

Archivo de encabezado *.H Turbo C

*.Controlador de gráficos BGI para diferentes monitores

*.C Rutina Turbo C (archivo fuente)

Entre ellos: ¿Los anteriores respectivamente Para:

T Tiny (modo micro)

S Small (modo pequeño)

C Compact (modo compacto)

M Medium (modo medio)

L Large (modo grande)

H Huge (modo enorme)

Componentes generales de los programas Turbo C

Turbo C 2.0, como otros lenguajes, permite a los usuarios escribir programas de aplicación

de acuerdo con su formato prescrito y las declaraciones proporcionadas. Mire el siguiente programa fuente Turbo C.

Ejemplo 1:

/*Programa de ejemplo de Turbo C*/

#include lt; stdio.hgt /*Incluir descripción del archivo*/

p>

p>

void lgc(void); /*Descripción de la subfunción*/

char respuesta /*Definir variables globales*/

int main; () /*Definición de función principal*/

{

char a /*Definir variables locales*/

clrscr(); p> gotoxy(12, 3);

puts("¡Bienvenido a usar Turbo C2.0!");

gotoxy(15, 13); > printf("lt; Escgt;--Salir");

gotoxy(15, 15);

printf("lt;CRgt;--Continuar"); p>

mientras (1)

{

a=getch();

if(a==27)

romper;

if(a==13)

{

lgc();

if(answer=='y '||answer== 'Y')

{

gotoxy(23,14);

puts("Escriba a la empresa");

getch();

romper

}

}

}

return(0);

}

void lgc(void)

{

clrscr(); p> gotoxy(12, 8);

printf("¡La excelente selección!");

gotoxy(21, 12);

tf("¿Tienes alguna pregunta?(Y/N)");

respuesta=getche();

}

Puedes verlo desde del programa de ejemplo Resulta que el programa fuente Turbo C tiene principalmente las siguientes características:

1. Los programas generalmente se escriben en letras minúsculas

2. La mayoría de las declaraciones deben terminar con; Símbolo ";", de lo contrario Turbo C no considerará que la declaración esté completa

;

3. Cada programa debe tener una y solo una función principal () llamada función principal;

4. Cada cuerpo del programa (función principal y cada subfunción, como la función main() y la función sub() en el ejemplo anterior)

Debe utilizar un par de llaves "{" y "}";

5. Un programa relativamente completo generalmente incluye: archivos de inclusión (un conjunto de declaraciones #includelt; *.hgt;), usuario

parte de descripción de la función, definición completa de la variable, función principal y varias subfunciones. La función principal y las subfunciones

también incluyen definiciones de variables locales, varias funciones de la biblioteca Turbo C, declaraciones de flujo de control, declaraciones de llamada de función de usuario

, etc.; p > 6. La parte del comentario se incluye entre "/*" y "*/", que el compilador Turbo C ignora durante la compilación.

Nota:

1. Al igual que otros lenguajes, las variables Turbo C primero deben definir su tipo de datos antes de su uso.

No se pueden usar variables no definidas. La definición del tipo de variable debe estar antes de la declaración ejecutable. Por ejemplo, en el ejemplo anterior, la primera declaración en la función main() es la declaración de definición de la variable, que debe colocarse antes de la primera declaración ejecutable. clrscr().

2. En Turbo C, las letras mayúsculas y minúsculas son diferentes, y las letras mayúsculas y minúsculas de las mismas letras representan diferentes

variables.

3. El formato de escritura del programa Turbo C es muy flexible y no tiene restricciones estrictas.

La función principal del Ejemplo 1 se puede escribir como:

main(){char c; gotoxy(12, 3); puts("¡Bienvenido a usar Turbo C2.0!"); gotoxy(15, 13);

printf("lt;CRgt;--Continuar"); .}

No hay ningún error de sintaxis al escribir de esta manera, pero es incómodo de leer y también hace que la jerarquía del programa no quede clara.

El autor recomienda que al programar en Turbo C, utilice una declaración por línea, sangría hacia atrás cuando encuentre declaraciones anidadas y agregue líneas de comentarios al

programa cuando sea necesario. Esto hace que la estructura del programa sea clara y fácil de leer, mantener y modificar.

A través de la introducción anterior, se puede concluir que la forma general del programa fuente Turbo C es:

Archivo incluido

Descripción del tipo de subfunción

Definición de variable completa

main()

{

Definición de variable local

cuerpo del programa gt; >

}

sub1()

{

Definición de variable local

lt cuerpo del programa

}

sub2()

{

Definición de variable local

lt cuerpo del programa

}

subN()

{

<. p> definición de variable local

lt; cuerpo del programa gt;

}

Entre ellos, sub1(), ..., subN() representan usuario- subfunciones definidas, programa El cuerpo se refiere a cualquier declaración de llamada de función de biblioteca, declaración de flujo de control u otra declaración de llamada de subfunción proporcionada por Turbo C 2.0

.

Tipo de entero (int)

1. Descripción de los números enteros

Con diferentes modificadores, los números enteros tienen los siguientes tipos; p>

int corto con signo Descripción del entero corto con signo. La abreviatura es corta o int, la longitud de la palabra es 2

Byte ***Número binario de 16 bits, el rango del número es -32768~32767.

int largo con signo Descripción del entero largo con signo. La abreviatura es larga, la longitud de la palabra es 4 bytes***

Un número binario de 32 bits, el rango del número es -2147483648~2147483647.

entero corto sin signo descripción del entero corto sin signo. La abreviatura es int sin signo, la longitud de la palabra

es de 2 bytes a un número binario de 16 bits y el rango del número es 0 ~ 65535.

entero largo sin signo descripción del entero largo sin signo. La abreviatura no tiene signo, la longitud de la palabra

es 4 bytes*un número binario de 32 bits y el rango del número es 0~4294967295.

2. Definición de variables enteras

Puedes utilizar las siguientes declaraciones para definir variables enteras

int a, b /*a, b se definen como; Variable entera corta con signo*/

c larga sin signo /*c se define como una variable entera larga sin signo*/

3 Representación de constantes enteras

Según los diferentes sistemas base, existen tres métodos de representación para constantes enteras:

Número decimal: número que comienza con distinto de 0

Por ejemplo: 220, -560, 45900

Números octales: números que comienzan con 0

Por ejemplo: 06; 0106, 05788

Números hexadecimales: números que comienzan con 0X o 0x

Tales como: 0X0D, 0XFF, 0x4e

Además, puede agregar una letra "L" o "l" después de la constante entera para indicar que el número es un entero largo, como 22L,

0773L, 0Xae4l.

2.2 Tipo de coma flotante (float)

1. Descripción de los números de coma flotante

Existen los siguientes dos tipos de números de coma flotante en Turbo C:

float número de punto flotante único. La longitud de la palabra es 4 bytes*** número binario de 32 bits y el rango del número es

3.4x10-38E~3.4x10 38E.

número doble doble en coma flotante. La longitud de la palabra es 8 bytes*** número binario de 64 bits y el rango del número es

1.7x10-308E~1.7x10 308E.

Nota:

Los números de coma flotante son todos números de coma flotante con signo, no hay números de coma flotante sin signo.

2. Definición de variables de punto flotante

Puede utilizar las siguientes declaraciones para definir variables de punto flotante:

float a, f /*a; , f se define como una variable de punto flotante simple*/

double b; /*b se define como una variable de punto flotante doble*/

3. representación

Por ejemplo: 29.56, -56.33, -6.8e-18, 6.365

Nota:

1. Las constantes de punto flotante tienen una sola base (decimal ).

2. Todas las constantes de punto flotante son dobles por defecto.

3. Para números de punto flotante cuyo valor absoluto es menor que 1, se puede omitir el cero delante del punto decimal. Por ejemplo: 0.22 se puede escribir como .22,

-0.0015E-3 se puede escribir como -.0015E-3.

4. Cuando Turbo C genera números de punto flotante en el formato predeterminado, solo retiene hasta seis decimales.

2.3 Tipo de carácter (char)

Con diferentes modificadores, puedes definir dos tipos de variables de carácter, con y sin signo, por ejemplo:

char a: /*a se define como una variable de carácter con signo*/

unsigned char l; /*l se define como una variable de carácter sin signo*/

Caracteres en computadoras Expresados ​​en su código ASCII , su longitud es 1 byte. El rango de valores del número de caracteres con signo es -128 ~ 127 y el rango de valores del número de caracteres sin signo es 0 ~ 255. Por lo tanto, en el lenguaje Turbo C,

los datos de caracteres se procesarán como números enteros durante la operación. Si una variable se define como char, significa que la variable

está firmada. , se convertirá en un entero con signo.

Turbo C estipula que los caracteres con valores de código ASCII superiores a 0x80 se considerarán números negativos. Por ejemplo, si el carácter cuyo valor ASCII

es 0x8c se define como char, se convertirá al entero hexadecimal 0xff8c. Esto se debe a que cuando

el valor del código ASCII es mayor que 0x80, el bit más alto del byte es 1 y la computadora considerará que el número es negativo para

. el número representado por 0x8c es en realidad -74 (invierte los bits de 8c y suma 1), y -74 se convierte en un entero de dos bytes y

cuando se representa en la computadora, es 0xff8c (invierte los bits de 0074 y sumar 1). Por lo tanto, es solo 8c cuando se define como

carácter sin signo 0x8c y se convierte en un número entero. Se debe prestar especial atención a este punto cuando se trata de caracteres ASCII mayores que 0x80

(como códigos de caracteres chinos). Generalmente, los caracteres chinos se definen como caracteres sin firmar (que se encontrarán a menudo en programas futuros).

Además, también puede definir una matriz de caracteres (la matriz se presentará en detalle más adelante), en cuyo caso la matriz

representa una cadena.

Por ejemplo:

char str[10];

Cuando la computadora compila, dejará espacio para 10 caracteres consecutivos, es decir, str[0 ] a str[9]***10 variables

pero solo las primeras 9 están disponibles para los usuarios. La décima cadena [9] se usa para almacenar el terminador de cadena NULL, que es "\0".

Pero el compilador agrega automáticamente el terminador, por lo que se debe prestar especial atención a esto.

2. Representación constante de caracteres

Los caracteres que se pueden representar mediante símbolos se pueden expresar directamente entre comillas simples, como 'a', '9', 'Z' o <. /p>

El valor del código ASCII de este carácter representa, por ejemplo, el número decimal 85 representa la letra mayúscula 'U', el número hexadecimal 0x5d representa la letra mayúscula ']' y el número octal 0102 representa la letra mayúscula letra 'B'.

Algunos caracteres de control que no pueden representarse mediante símbolos solo pueden representarse mediante valores de código ASCII. Por ejemplo, el número decimal 10 representa un avance de línea. El número hexadecimal 0x0d representa un retorno de carro. representa un retorno de carro. El número 033 representa Esc. También hay otro método de representación en Turbo C2.0

Por ejemplo, '\033' representa Esc, donde el número después del símbolo '\0' representa valores hexadecimales

ASCII. Por supuesto, este método de representación también se aplica a caracteres que pueden representarse mediante símbolos.

Además, algunos caracteres de uso común en Turbo C2.0 están representados por las siguientes disposiciones especiales:

El especificador equivale al significado

'\ f' ' \X0C' cambio de página

'\r' '\X0D' retorno de carro

'\t' '\X09' tecla de tabulación

' \n ' '\X0A' nueva línea

'\\' '\X5C' \symbol

'\'' '\X27' 'symbol

' \" ' '\X22' "

Para las constantes de cadena, generalmente se expresan entre comillas dobles, como "Hola Turbo C2.0".

2.4 Tipo de puntero (*)

El puntero es un tipo de datos especial que generalmente no se encuentra en otros idiomas. El puntero apunta a la dirección de la variable.

Esencialmente, el puntero es la dirección de la unidad de almacenamiento. Dependiendo del tipo de variable apuntada, puede ser un puntero entero

(int *), un puntero de punto flotante (float *), un puntero de carácter (char *), un puntero de estructura (struct * ) y un enlace

Puntero de unión (unión *) (los punteros de estructura y los punteros de unión se presentarán en la Sección 4).

2.5 Tipo sin valor (void)

El tipo sin valor tiene una longitud de byte de 0 y tiene dos usos principales: Primero, indica claramente que una función no devuelve nada

Valor; Uno es generar un puntero del mismo tipo (que puede asignarse dinámicamente a su memoria según sea necesario).

Por ejemplo:

void *buffer; /*buffer se define como un puntero sin valor*/

Palabras clave

Así Las llamadas palabras clave son palabras que han sido utilizadas por el propio Turbo C2.0 y no se pueden utilizar para otros fines. Por ejemplo, las palabras clave

no se pueden utilizar como nombres de variables, nombres de funciones, etc.

Turbo C2.0 tiene las siguientes palabras clave:

***11 extensiones Turbo C2.0

asm _cs _ds _es _ss cdecl

pascal de interrupción muy cerca de enorme

***32 definido por el estándar ANSI

auto double int struct break else

long switch case enum registro typedef

char extern return union const float

short unsigned continue for firmado void

default goto sizeof volatile do if

while static

3.2 Identificadores

Los llamados identificadores se refieren a los nombres de constantes, variables, etiquetas de declaraciones y funciones definidas por el usuario. La definición de identificadores Turbo C

2.0 es muy flexible. Como identificadores se deben cumplir las siguientes reglas:

1. Todos los identificadores deben comenzar con una letra (a~z, A~Z) o un guión bajo (_

2); Identidad Las otras partes del símbolo pueden estar compuestas por letras, guiones bajos o números (0 ~ 9).

3. Las letras mayúsculas y minúsculas representan diferentes significados, es decir, representan diferentes identificadores

4. Sólo los primeros 32 caracteres del identificador son válidos

5. El identificador no puede utilizar palabras clave Turbo C2.0.

A continuación se muestran algunos identificadores correctos e incorrectos:

Correcto o incorrecto

smart 5smart

_decision bomb?

> key_board key.board

FLOAT float

Descripción de la variable

Turbo C2.0 estipula que todas las variables deben describirse antes de su uso. Una declaración de variable consta de un tipo de datos seguido de uno o más nombres de variables. La forma de descripción de la variable es la siguiente:

Escriba lt; tabla de variables gt;;

El tipo aquí se refiere al tipo de datos válido de Turbo C2.0. La tabla de variables es uno o más nombres de identificadores, separados por "," entre cada

identificador.

Por ejemplo:

int i, j, k; unsigned char c, str[5], *p

4.2 Tipos de variables

Las variables se pueden declarar en tres lugares del programa: dentro de la función, en la definición de parámetros de la función o fuera de todas las funciones

. Según las diferentes posiciones definidas, las variables se pueden dividir en variables locales, parámetros formales y variables globales.

1. Variables locales

Las variables locales se refieren a variables declaradas dentro de una función (a veces también llamadas variables automáticas). Utilice la palabra clave auto para ilustrar

que cuando se omite auto, todas las variables no globales se consideran variables locales, por lo que en realidad auto

nunca se usa.

Las variables locales se generan automáticamente cuando se llama a la función, pero no se inicializan automáticamente. Cuando finaliza la llamada a la función, esta

variable desaparecerá automáticamente la próxima vez que se llame a la función. Se generará automáticamente, se asignará nuevamente y desaparecerá automáticamente cuando salgas.

2. Parámetros formales

Los parámetros formales se refieren a variables definidas entre paréntesis después del nombre de la función y se utilizan para aceptar

parámetros de la función que llama. Los parámetros formales pueden actuar como otras variables locales dentro de una función.

Por ejemplo:

puthz(int x, int y, int color, char *p)

{

int i, j , k; /*Definir variables locales*/

lt; Cuerpo del programa gt

}

Entre ellos, x, y, color, *p son funciones Los parámetros formales se pueden utilizar directamente dentro de esta función

sin mayor explicación.

3. Variables globales

Las variables globales se refieren a variables que se describen fuera de todas las funciones. Son "visibles" dentro de todo el programa.

Se pueden utilizar. por cualquier función y conserva su valor durante la ejecución del programa. Siempre que la variable global cumpla las dos condiciones antes de usarla y fuera de la función, se puede describir en cualquier parte del programa, generalmente antes de ilustrar la función principal del programa.

Por ejemplo:

#includelt; stdio.hgt;

int test /*Definir variables globales*/

void f1 ( int x, float y); /*Descripción de la subfunción*/

void f2(void /*Descripción de la subfunción*/

main()

{

test=5; /*Asignar valores a las variables globales*/

f1(20, 5.5 /*Llamar a la subfunción f1); () con parámetros formales*/

/*El valor de la prueba se convierte en 115*/

f2() /*Llame a f2(), el valor de la prueba se convierte en 1150*/;

}

void f1(int x, float y)

{

float z /*z se define como local; variable*/

z=x*y; /*cálculo*/

prueba=prueba z

}

void f2; (void)

{

int count=10 /*Definir variables locales e inicializar*/

test=test*count

<; p> }

Dado que las variables globales pueden ser utilizadas por cualquier función en todo el programa, se pueden utilizar como un medio para pasar parámetros entre funciones. Sin embargo, cuando hay demasiadas variables globales, se produce una sobrecarga de memoria. se vuelve grande.

4.3 Tipos de almacenamiento variable

Turbo C2.0 admite cuatro tipos de almacenamiento variable. Los especificadores son los siguientes:

registro externo estático automático

Se presentan por separado a continuación.

1. auto

Auto se llama variable automática. Se ha introducido antes y no se repetirá aquí.

2. estática

la estática se denomina variable estática. Según el tipo de variables, se pueden dividir en variables locales estáticas y variables globales estáticas.

1. Variable local estática

La diferencia entre esta y las variables locales es: cuando la función sale, esta variable siempre existe, pero no puede ser utilizada por otras funciones

, al ingresar nuevamente a esta función, se guardará el último resultado. Otros son iguales que las variables locales.

2. Variables globales estáticas

Turbo C2.0 permite dividir programas grandes en varios archivos de módulos independientes y compilarlos por separado, y luego los archivos objeto de todos los módulos

están vinculados entre sí, esto mejora la velocidad de compilación y también facilita la gestión y mantenimiento del software. Estática

Una variable global se refiere a una variable que solo es visible en el archivo fuente en el que está definida pero no en otros archivos fuente.

La diferencia entre esta y las

variables globales es que las variables globales pueden declararse como variables externas (externas) y ser utilizadas por otros archivos fuente.

Las variables globales estáticas ya no pueden declararse como. Externo, es decir, sólo puede ser utilizado por el archivo fuente en el que se encuentra.

3. extern

extern se llama variable externa. Para que la variable sea utilizable no solo en el archivo fuente en el que está definida, sino también en otros archivos. Por lo tanto, cada archivo de módulo de programa debe ser informado de las variables completas, que se pueden explicar usando

extern.

Por ejemplo:

El archivo 1 es archivo1.c El archivo 2 es archivo2.c

int i, j /*Definir variables globales*/ extern int; i , j; /*Las instrucciones son copiar i, j del

archivo 1*/

char c; extern char c /*Copiar c a */

void func1(int k); func2() /*Función definida por el usuario*/

{

main() static float k /*Definir variables estáticas*/

{ i=j*5/100;

func1(20); /*Llamar función*/ k=i/1.5;

.

. *Función definida por el usuario*/

{

j=k*100

}

Para los dos archivos anteriores file1. cy file2.c, compilados utilizando el entorno de desarrollo integrado Turbo C2.0

Al conectarse, primero se debe crear un archivo .prj. Por ejemplo, file.prj, el contenido del archivo es el siguiente:

file1.c

file2.c

Luego escriba el nombre del archivo .prj en el menú principal Proyecto en el elemento Nombre del proyecto. Luego use F9

para compilar y conectarse, se generará un archivo ejecutable llamado fioe.exe.

Las variables externas son las mismas que las variables públicas definidas por COMMOM en el lenguaje FORTRAN.

4. registro

El registro se denomina variable de registro. Sólo se puede utilizar para variables enteras y de caracteres. El registro definidor significa que la variable especificada por Turbo C2.0 se almacena en el registro de la CPU en lugar de almacenarse en la memoria como una variable ordinaria. Esto puede mejorar la velocidad de operación. Sin embargo, Turbo C2.0 solo permite definir dos variables de registro al mismo tiempo.

Una vez que hay más de dos, el compilador tratará automáticamente las variables de registro que excedan el límite como variables que no son de registro<. /p>

para manejar. Por lo tanto, las variables de registro se utilizan a menudo en lugares donde aparece con frecuencia el mismo nombre de variable.

Además, las variables de registro solo son aplicables a variables locales y parámetros formales de funciones. Son variables de tipo automático.

Por lo tanto, no se pueden utilizar como variables globales. La definición de una variable de registro entero se puede escribir como:

registro int a;

Los tipos de variables y los tipos de almacenamiento de variables introducidos anteriormente se utilizarán en futuros estudios a través de rutinas

Las definiciones y usos del prefacio profundizarán gradualmente su comprensión.

4.4 Variables de matriz

La llamada matriz se refiere a un conjunto de variables con el mismo tipo de datos y el mismo nombre. Se accede a cada elemento específico de la matriz mediante un subíndice. La matriz consta de una dirección de almacenamiento continua, la dirección más baja corresponde al primer elemento de la matriz y la dirección más alta corresponde al último elemento de la matriz. Las matrices pueden ser unidimensionales o multidimensionales. Turbo C2.0 también utiliza variables de matriz como su lenguaje avanzado.

1. Matriz unidimensional

El formato de descripción de una matriz unidimensional es:

Escriba el nombre de la variable [longitud]; > El tipo es Se refiere al tipo de datos, es decir, el tipo de datos de cada elemento de la matriz, incluidos enteros, coma flotante, carácter, puntero, estructura y unión.

Por ejemplo:

int a[10];

unsigned long a[20]

char *s[5] ;

char *f[];

¿Cómo puede ser tan bueno un estudiante de informática? ¡Soy ingeniero de software, hermano!