Está en la página 1de 9

Programación modular en C.

Primero que nada vamos a definir que son las variables local y global, aclarando
que hay otros tipos de variable, que si, también se pueden usar pero no es asunto
del propio tema (quizás en otro tutorial lo explique). Primero mostraremos la
forma general de cómo debe estar estructurado un programa en C y después
definiremos los tipos de variables, aclarando que no todos los programas pueden
estar estructurados así, a lo mejor aya ocasiones en la que no utilicemos
funciones y todo el codigo este dentro del main.

/*Sección de librerías*/
Ex. #include<stdio.h>
/*Sección de declaración de prototipos de función*/
/*Encabezado de la función*/
Tipo nombre_funcion_( tipo nombre_argumento1, tipo nombre_argumento2);

/*Sección de declaración de variables globales*/


Tipo nombre_variable;

/* Programa principal*/
Void main()
{

/*Sección de declaración o definición de funciones*/


Tipo nombre_funcion (tipo nombre_argumento1, tipo nombre_argumento2)
{
/* Declaración de variables locales */
Tipo nombre_variablelocal;
Return ( variable || expresión);
}

Esquema 1. Forma general de un programa structurado en C

Variable local.
Su ámbito, es decir donde actúa o realiza su función es dentro de la propia
función, esto es: que su valor solo es utilizado o modificado dentro de esta (o sea
la función). No necesariamente se utiliza este tipo de variables en funciones, sino
que también se puede utilizar en un programa completo realizado dentro del main.

Autor: Pablo Juárez López


En C las variables locales se declaran de la siguiente forma:

Tipo de dato _ nombre de la variable;

Ex: int num;


Donde int es de tipo entero, y num es el nombre de la variable.

Por ejemplo:

#include<stdio.h>
void main ()
{ Variable local
int num;
printf("moshi moshi dame numero");
scanf("%d",&num);
}

Esquema 2. variable local dentro del main.

Variable Global.
Su ámbito se desarrolla en todo el programa, esto es que el valor que toma la
variable global se puede utilizar en cualquier lugar, habiendo funciones o no.

En C las variables globales se declaran de la siguiente forma:

Tipo nombre_variable;

Por ejemplo:

#include<stdio.h>
int num; Variable
Global

void main () Fig2 Variable


{ Global.
printf("moshi moshi dame numero");
scanf("%d",&num);
}

En C hay la particularidad de poder utilizar las funciones las cuales son muy útiles,
fáciles y cómodas de utilizar para cuando se trabaja en un proyecto grande o algo
complejo, ya que estas al ejecutar el programa si el compilador detecta un error
seria fácil localizar dicho error ya que nos marca en que función se encuentra tal
error y así depurarlo.

Autor: Pablo Juárez López


Función.

Una función es una sección o trozo de codigo (programa) que tiene un nombre
definido y realiza una determinada acción.
Por ejemplo, una función que devuelve un valor en pantalla:
scanf
O una función que acepta información y no devuelve nada, por ejemplo:
printf

Cuando se llama a una función en una determinada parte del programa se


ejecutan las instrucciones que se encuentran dentro de esta; Se puede acceder a
una misma función desde varios lugares distintos del programa.
Generalmente, una función procesara la información que le es pasada y puede o
no devolver un valor.
La información pasada a esta es por medio de unos Argumentos (también
llamados parámetros) estos pueden ser formales o actuales.

Argumentos formales.

Se declara en el encabezado de la función y sirve para recibir los valores con los
cuales la función será ejecutada.
Por ejemplo:

Argumentos formales

void funcion ( int ren, int col);

Argumentos Actuales.

Es el que se usa al momento de hacer la llamada a la función y contiene el valor


con el cual se desea que la función se ejecute.
Por ejemplo:

Argumentos actuales

void funcion ( int ren, int col)

Autor: Pablo Juárez López


Hay 4 modos de usar a las funciones.

• Función que no devuelve una expresión y no tiene argumentos.


• Función que no devuelve una expresión y si tiene argumentos.
• Función que si devuelve una expresión y no tiene argumentos.
• Función que si devuelve una expresión y si tiene argumentos

• Función que no devuelve una expresión y no tiene argumentos.

En C una función de este tipo seria:

void princi ();

Donde void es de tipo vacío y a la vez indica que no regresa ningún valor, princi es
el nombre de la función, ( ) indica que no tiene argumentos.
Este tipo de funciones es útil para cuando tenemos que repetir el mismo codigo
dentro del programa.

Veamos un ejemplo en C:

#include<stdio.h>
void princi();
void main()
{
princi();
}
void princi ( )
{
printf (" MENU PRINCIPAL ");
printf (" ==============\ n");
printf (" 1. Nuevo registro \n");
printf (" 2. Modificar registro \n");
printf(“Dame opcion:”);
}

Autor: Pablo Juárez López


Función que no devuelve una expresión y si recibe argumentos.

Este tipo de funciones en C se declaran de la siguiente forma:

void elige( int rol);

Donde int es el tipo del argumento, y rol es el nombre del argumento.

Veamos un ejemplo:

#include<stdio.h>
void elige(int rol);
int num;
void main()
{
int cool,rola;
clrscr();
printf("Dame un numero: ");
cool =wherex();
rola = wherey();
scanf("%d",&num);
while (num<1 || num>4)
{
gotoxy(cool,rola);
clreol();
scanf("%d",&num);
}
elige(num);
}
void elige(int rol)
{
printf("El numero tecleado es: %d",rol);
getch();
}

Autor: Pablo Juárez López


• Función que si devuelve una expresión y no tiene argumentos.

Este tipo de funciones en C se declaran de la siguiente forma:

int resul( );

Donde int es el tipo de la función, que en este caso es entero.

Por ejemplo:

#include<stdio.h>

int num,r;

int resul()
{
printf("Dame un numero: ");
scanf("%d",&num);
return (num);
}

void main()
{
clrscr();
r=resul();
printf("El resultado es: %d",r);
getch();

Autor: Pablo Juárez López


• Función que si devuelve una expresión y si tiene argumentos.

Este tipo de funciones en C se declaran de la siguiente forma:

int ultimo( int uno, int dos);

Donde int es el tipo y (resul, uno y dos ) son los nombres de la función y los
argumentos respectivamente.

Por ejemplo:

#include<stdio.h>
int ultimo(int uno,int dos)
{
int r;
r=uno+dos;
return r;
}
void main()
{
p= ultimo( 5,5);
printf(“ La suma es: %d”, p);
}

Para utilizar las funciones se necesita de 2 cosas: declarar a la función y llamar a


la función.

Declaración de funciones.

En C para declarar a las funciones es:

 Encabezado de la función.
 Cuerpo de la función.

Encabezado de la función.

El encabezado se declara al inicio del programa antes de las variables globales, y


su estructura es:

int primero( int un, int do);

Autor: Pablo Juárez López


Aquí va a depender de que tipo de función es, por ejemplo en el recuadro anterior
es de tipo entero, devuelve una expresión y devuelve un argumento, aquí también
dependerá del tipo de función que queramos utilizar.

Cuerpo de la función.

Aquí se declara de este modo:


int primero( int un, int do)

Y va después del programa principal.


Tip: A groso modo el encabezado de la función es la misma (se escribe igual) que
en el cuerpo de la función exceptuando que esta lleva “ ; “ al final y en el cuerpo de
la función no.

Llamada a funciones.

Para llamar a las funciones en C se hace de este modo:


primero(unos, doces);

Aquí observamos que cambia la forma en llamar a la función, esto es porque al


llamarla solo se hace con el nombre de la variable sin escribir el tipo de la función,
y en los argumentos solo se escribe los nombres de las variables, que
comúnmente son variables globales y también sin escribir el tipo de la variable, o
también se le puede asignar una constante.

Veamos un ejemplo para que se comprenda mejor:

Autor: Pablo Juárez López


#include<stdio.h>
#include<conio.h>
/*Sección de declaración de prototipos de función*/
/*Encabezado de la función*/
int prim(int un,int don);

/* Programa Principal */
void main ()
{
int su;
clrscr();
su=prim(5,4); /*<<<<<<<<<Llamamos a la función con sus argumentos*/
printf(" la suma es: %d ",su );
getch();

}
int prim(int un,int don)
{
int re;
re= un+don;
return re;
}

En este pequeño codigo encontramos una llamada a función, su=prim(5,4);


Acá llamamos a la función prim y le asignamos como parámetros la constante 5 y
4, después su toma el valor que regresa la función, que en este caso es re y
después se imprime el valor que tomo su.
Para que quede claro, otra cosa mas, en la llamada a la función su=prim(5,4); la
constante 5 es tomada por un en: int prim(int un, int don) y el 4 por el don.

Y pues eso seria todo acerca de las funciones.

Cualquier duda, aclaración o sugerencia será bien recibida y me podrás contactar


vía mail: paul_d.luffy@hotmail.com

Autor: Pablo Juárez López

También podría gustarte