Aprendizaje de lengua C [4] -funciones y reglas de alcance

1. Función

Una función es un conjunto de declaraciones que realizan una tarea en conjunto. Cada programa en C tiene al menos una función, la función principal main (). Todos los programas simples pueden definir otras funciones adicionales.

La declaración de la función le dice al compilador el nombre, el tipo de retorno y los parámetros de la función. La definición de función proporciona el cuerpo real de la función.

La biblioteca estándar de C proporciona una gran cantidad de funciones integradas que los programas pueden llamar. Por ejemplo, la función strcat () se usa para concatenar dos cadenas, y la función memcpy () se usa para copiar la memoria a otra ubicación.

Hay muchos nombres para funciones, como métodos, subrutinas o programas, etc.

La forma general de definición de función en lenguaje C es la siguiente

return_type function_name( parameter list )
{
    
    
   body of the function
}

En lenguaje C, una función consta de un encabezado de función y un cuerpo de función.

Todos los componentes de una función se enumeran a continuación:

1. Tipo de retorno: una función puede devolver un valor. return_type es el tipo de datos del valor devuelto por la función. Algunas funciones realizan las operaciones necesarias sin devolver un valor. En este caso, return_type es la palabra clave void.
2. Nombre de la función: este es el nombre real de la función. El nombre de la función y la lista de parámetros juntos forman la firma de la función.
3. Parámetros: los parámetros son como marcadores de posición. Cuando se llama a la función, se pasa un valor al parámetro, que se denomina parámetro real. La lista de parámetros incluye el tipo, orden y número de parámetros de función. Los parámetros son opcionales, es decir, la función puede no contener parámetros.
4. Cuerpo de la función: El cuerpo de la función contiene un conjunto de declaraciones que definen la función para realizar tareas.

2. Reglas de alcance

En cualquier tipo de programación, el alcance es el área donde existen las variables definidas en el programa, más allá de la cual no se puede acceder a las variables. Hay tres lugares en el lenguaje C para declarar variables:

  1. Variables locales
    dentro de una función o bloque Las variables declaradas dentro de una función o bloque se denominan variables locales. Solo pueden ser utilizados por la función o declaraciones dentro del bloque de código. Las variables locales son incognoscibles fuera de la función.
  2. Las variables globales fuera de todas las funciones
    se definen fuera de la función, normalmente en la parte superior del programa. Las variables globales son válidas durante todo el ciclo de vida del programa y se puede acceder a las variables globales desde cualquier función.
    Cualquier función puede acceder a las variables globales. En otras palabras, las variables globales están disponibles en todo el programa una vez declaradas.
  3. En la definición de parámetros de función de
    los parámetros formales, los parámetros y los parámetros formales de la función se tratan como variables locales en la función, si tienen el mismo nombre que las variables globales, se utilizarán primero.

En el programa, el nombre de la variable local y la variable global pueden ser el mismo, pero en la función, si los dos nombres son iguales, se usará el valor de la variable local y no se usará la variable global.

全局变量与局部变量在内存中的区别:
全局变量保存在内存的全局存储区中,占用静态的存储单元;
局部变量保存在栈中,只有在所在函数被调用时才动态地为变量分配存储单元。

Cuando se define una variable local, el sistema no la inicializa, debe inicializarla usted mismo. Al definir variables globales, el sistema las inicializará automáticamente, como se muestra a continuación:
Inserte la descripción de la imagen aquí

Es una buena práctica de programación inicializar las variables correctamente, de lo contrario, el programa puede producir resultados inesperados porque las variables no inicializadas causarán algunos valores basura que ya están disponibles en la ubicación de la memoria.

Supongo que te gusta

Origin blog.csdn.net/qq_46009608/article/details/110312658
Recomendado
Clasificación