SlideShare ist ein Scribd-Unternehmen logo
1 von 16
ARGUMENTOS POR OMISION CUANDO UNA FUNCION TIENE UN CIERTO NUMERO DE PARAMETROS, NORMALMENTE EL MISMO NUMERO DE ARGUMENTOS DEBEN INDICARSE CUANDO SE LLAMA A LA FUNCION. EN C++, SIN EMBARGO, ES POSIBLE OMITIR ALGUN ARGUMENTO. CUANDO SE OMITE EL ARGUMENTO DE UN PARAMETRO QUE ES UN ARGUMENTO POR DEFECTO, SE UTILIZA AUTOMATICAMENTE ESTE.
EJEMPLO DE PARAMETROS POR OMISION #include <iostream.h> usingnamespacestd; void f(int a=10, int b=20,int c=30)  { cout<<"a="<<a<<endl; cout<<"b="<<b<<endl; cout<<"c="<<c<<endl;  } voidmain (void)  { system(‘cls’);   f();   f(1);   f(1,5);   f(1,2,3); cout<<"pulse enter para continuar"; system(‘pause’); }
REGLAS DE ARGUMENTOS POR DEFECTO LOS ARGUMENTOS POR DEFECTO SE PASAN POR VALOR NO POR REFERENCIA. DESPUES DEL PRIMER VALOR POR DEFECTO TODOS OS ARGUMENTOS POSTERIORES DEBEN INCLUIR TAMBIEN VALORES POR DEFECTO. LOS VALORES DE LOS ARGUMENTOS POR DEFECTO, PUDEN SER VALORES, LITERALES O DEFINICIONES CONST, NO PUEDEN SER VARIABLES.
PARAMETROS CONST DE UNA FUNCION CON EL OBJETO DE AÑADIR SEGURIDAD ADICIONAL A LAS FUNCIONES, SE PUEDEN AÑADIR A UNA DESCRIPCION DE UN PARAMETRO EL ESPECIFICADOR CONST, QUE INDICA AL COMPILADOR QUE SOLO ES DE LECTURA EN EL INTERIOR DE LA FUNCION, SI SE INTENTA ESCRIBIR EN ESTE PARAMETRO SE PRODUCIRA UN MENSAJE DE ERROR DE COMPILACION
EJEMPLO FUNCIONES CONST #include <iostream.h> usingnamespacestd; void tratar(constint []); main() { system(‘cls’); int a[]={10,20,30};  tratar (a); cout<<"";cout<<a[0]<<a[1]<<a[2]; system(‘pause’); return 0; } void tratar (constint b[]) {  b[0] /=2;  b[1] /=2;  b[2] /=2; }
Funciones en linea (in line) Las funciones en línea sirven para aumentar la velocidad de su programa Las funciones en línea es una petición al compilador para que genere código en línea. No generara código en línea, si existe un bucle, un switch o un goto
Ejemplo de funciones en linea #include <iostream.h> usingnamespacestd; inlinefloat suma(float, float); floata,b; main() { system(‘cls’); cout<<"dame el primer numero"; cin>>a; cout<<"dame el segundo numero"; cin>>b; cout<<"el resultado es"<<suma(a,b); system(‘pause’); return 0; } inlinefloat suma (floatd,float e) { returnd+e;   }
AMBITO (ALCANCE) SE DIVIDE EN AMBITO DE PROGRAMA AMBITO DE ARCHIVO FUENTE DECLARADA POR LA PALABRA STATIC. AMBITO DE FUNCION AMBITO DE BLOQUE
VARIABLES LOCALES Y VARIABLES GLOBALES SE LE LLAMA VARIABLES GLOBALES A LAS QUE SE DECLARN FUERA DEL AMBITO DE PROGRAMA. SE LE LLAMA VARIABLES LOCALES A AQUELLAS QUE SE DECLARAN DENTRO DEL AMBITO DE PROGRAMA.
CLASES DE ALMACENAMIENTO • El alcance de una variable se refiere a la región del texto fuente en C en el que la declaración de una variable es activa. • La duración de una variable se refiere a la gestión temporal del almacenamiento en memoria de una variable. • El alcance y duración de una variable quedan determinados por la clase de almacenamiento. ·C dispone de cuatro especificadores de clases de almacenamiento (auto, static, extern y register) y dos modificadores	de	clases	de almacenamiento (const y volatile
CLASES DE ALMACENAMIENTO Variables automáticas y estáticas Variable automática:  su almacenamiento en memoria se asigna automáticamente según su alcance. Cuando termina su alcance el compilador libera esa posición de memoria perdiéndose su valor. Si se reingresa al alcance de la variable se asigna una nueva dirección. Variable fija o estática:  tiene asignada una posición de memoria desde el inicio de ejecución del programa hasta el final del mismo. Esto significa que una variable estática conserva su valor cuando se vuelve a llamar a la función que la contiene.
Ejemplo clase auto y static #include <iostream.h> usingnamespacestd; void incremento(void) {   auto int j=1; staticint k=1; j++;   k++; cout<<""; cout<< k;cout<<"";cout<< j;cout<<"";  } intmain( void ) { system(‘cls’);   incremento();   incremento();   incremento(); system(‘pause’); }
Ejemplo clase extern #include <iostream.h> usingnamespacestd; void leer(void); float f; intmain() { system(‘cls’);   leer(); cout<<"valor de float="<<f; system(‘pause’); return 0;   } void leer(void)   { externfloat f; cout<<"introduzca un valor en flotante"; cin >>f; system(‘pause’);   }
Ejemplo clase registro #include <iostream.h> usingnamespacestd; voidusoregistro(void) { registerint k; cout<<"contar con la variable registro"; for (k=1;k<=100;k++) cout<<""<<k; } main() {   voidusoregistro(void); system(‘cls’); usoregistro(); system(‘pause’); return 0;   }
USO DE FUNCIONES DE BIBLIOTECA FUNCIONES DE CARÁCTER FUNCIONES DE PRUEBA DE CARACTERES ESPECIALES FUNCIONES DE CONVERSION DE CARACTERES FUNCIONES MATEMATICAS FUNCIONES NUMERICAS FUNCIONES TRIGONOMETRICAS FUNCIONES LOGARITMICAS Y EXPONENCIALES FUNCIONES ALEATORIAS FUNCIONES DE FECHA Y HORA FUNCIONES DE UTILIDAD
VARIABLES GLOBALES Y LOCALES Variables automáticas y estáticas Las variables locales son automáticas por defecto. Se puede usar la palabra reservada auto para hacer automática una variable. Para hacer una variable estática se usa la palabra reservada static. • Las variables automáticas cuando se declaran e inicializan son reinicializadas cada vez que se ingresa a su bloque de alcance. Las variables estáticas se inicializan sólo una vez (por defecto valor 0).

Weitere ähnliche Inhalte

Was ist angesagt?

Pr106 funcionesdefinicion variables
Pr106 funcionesdefinicion variablesPr106 funcionesdefinicion variables
Pr106 funcionesdefinicion variables
yonatan novoa
 
Ejemplos c
Ejemplos cEjemplos c
Ejemplos c
Carlos
 
Problemas+resueltos+de+c$2 b$2b
Problemas+resueltos+de+c$2 b$2bProblemas+resueltos+de+c$2 b$2b
Problemas+resueltos+de+c$2 b$2b
FRESH221 C.R
 
Computacion punteros
Computacion punterosComputacion punteros
Computacion punteros
Manuel
 

Was ist angesagt? (20)

Programación 1: funciones en C
Programación 1: funciones en CProgramación 1: funciones en C
Programación 1: funciones en C
 
07 funciones
07 funciones07 funciones
07 funciones
 
Programación 1: cadenas en C
Programación 1: cadenas en CProgramación 1: cadenas en C
Programación 1: cadenas en C
 
Otra introducción a apuntadores
Otra introducción a apuntadoresOtra introducción a apuntadores
Otra introducción a apuntadores
 
Pr106 funcionesdefinicion variables
Pr106 funcionesdefinicion variablesPr106 funcionesdefinicion variables
Pr106 funcionesdefinicion variables
 
Clase 5
Clase 5Clase 5
Clase 5
 
Funciones en Lenguaje C
Funciones en Lenguaje CFunciones en Lenguaje C
Funciones en Lenguaje C
 
FUNCIONES LENGUAJE C
FUNCIONES LENGUAJE CFUNCIONES LENGUAJE C
FUNCIONES LENGUAJE C
 
!Prograc5
!Prograc5!Prograc5
!Prograc5
 
Ejemplos c
Ejemplos cEjemplos c
Ejemplos c
 
Problemas+resueltos+de+c$2 b$2b
Problemas+resueltos+de+c$2 b$2bProblemas+resueltos+de+c$2 b$2b
Problemas+resueltos+de+c$2 b$2b
 
C++ y sus librerias
C++ y sus libreriasC++ y sus librerias
C++ y sus librerias
 
Abstracción en programación
Abstracción en programaciónAbstracción en programación
Abstracción en programación
 
Introduccion a C++
Introduccion a C++Introduccion a C++
Introduccion a C++
 
Funcion printf
Funcion printfFuncion printf
Funcion printf
 
Clase 19
Clase 19Clase 19
Clase 19
 
Computacion punteros
Computacion punterosComputacion punteros
Computacion punteros
 
Suma y multiplicacion
Suma y multiplicacionSuma y multiplicacion
Suma y multiplicacion
 
Operaciones Basicas C++
Operaciones Basicas C++Operaciones Basicas C++
Operaciones Basicas C++
 
Palindromos
PalindromosPalindromos
Palindromos
 

Ähnlich wie Apunfun2

Clase lenguaje c xxxxxx
Clase lenguaje c xxxxxxClase lenguaje c xxxxxx
Clase lenguaje c xxxxxx
Mar15marian
 
Capitulo 2 tipos de datos en c
Capitulo 2 tipos de datos en cCapitulo 2 tipos de datos en c
Capitulo 2 tipos de datos en c
ecastelocc
 
05 sentencias basicas
05 sentencias basicas05 sentencias basicas
05 sentencias basicas
Carlos
 
Repaso del lenguaje
Repaso del lenguajeRepaso del lenguaje
Repaso del lenguaje
g_torrealba
 
Repaso del lenguaje C++
Repaso del lenguaje C++Repaso del lenguaje C++
Repaso del lenguaje C++
g_torrealba
 

Ähnlich wie Apunfun2 (20)

El lenguaje c
El lenguaje cEl lenguaje c
El lenguaje c
 
Algoritmo En Programa
Algoritmo En ProgramaAlgoritmo En Programa
Algoritmo En Programa
 
Lenguaje C
Lenguaje CLenguaje C
Lenguaje C
 
Introduccion a c++
Introduccion a c++Introduccion a c++
Introduccion a c++
 
Clase lenguaje c
Clase lenguaje c Clase lenguaje c
Clase lenguaje c
 
Clase lenguaje c xxxxxx
Clase lenguaje c xxxxxxClase lenguaje c xxxxxx
Clase lenguaje c xxxxxx
 
Clase lenguaje c xxxxxx
Clase lenguaje c xxxxxxClase lenguaje c xxxxxx
Clase lenguaje c xxxxxx
 
Capitulo 2 tipos de datos en c
Capitulo 2 tipos de datos en cCapitulo 2 tipos de datos en c
Capitulo 2 tipos de datos en c
 
Funcionesclase1
Funcionesclase1Funcionesclase1
Funcionesclase1
 
Unmsm05 2008
Unmsm05 2008Unmsm05 2008
Unmsm05 2008
 
Clase09 java script
Clase09 java scriptClase09 java script
Clase09 java script
 
05 sentencias basicas
05 sentencias basicas05 sentencias basicas
05 sentencias basicas
 
Java básico
Java  básicoJava  básico
Java básico
 
Codigos de programas
Codigos de programasCodigos de programas
Codigos de programas
 
Codigos de programas
Codigos de programasCodigos de programas
Codigos de programas
 
Codigos de programas
Codigos de programasCodigos de programas
Codigos de programas
 
Funciones en C
Funciones en CFunciones en C
Funciones en C
 
C sharp intro0
C sharp intro0C sharp intro0
C sharp intro0
 
Repaso del lenguaje
Repaso del lenguajeRepaso del lenguaje
Repaso del lenguaje
 
Repaso del lenguaje C++
Repaso del lenguaje C++Repaso del lenguaje C++
Repaso del lenguaje C++
 

Mehr von pabesacv

Mehr von pabesacv (20)

APUNTES DE ARQUITECTURA DE COMPUTADORAS
APUNTES DE ARQUITECTURA DE COMPUTADORASAPUNTES DE ARQUITECTURA DE COMPUTADORAS
APUNTES DE ARQUITECTURA DE COMPUTADORAS
 
Apuntes empiezo (c)
Apuntes empiezo (c)Apuntes empiezo (c)
Apuntes empiezo (c)
 
Apuntes empiezo (b)
Apuntes empiezo (b)Apuntes empiezo (b)
Apuntes empiezo (b)
 
Apuntes empiezo (a)
Apuntes empiezo (a)Apuntes empiezo (a)
Apuntes empiezo (a)
 
Apuntes estructuras 1
Apuntes estructuras 1Apuntes estructuras 1
Apuntes estructuras 1
 
Apuntes de estructuras nuevo
Apuntes de estructuras nuevoApuntes de estructuras nuevo
Apuntes de estructuras nuevo
 
Unida ii 9a
Unida ii 9aUnida ii 9a
Unida ii 9a
 
Unida ii 8a
Unida ii 8aUnida ii 8a
Unida ii 8a
 
Unida ii 8a
Unida ii 8aUnida ii 8a
Unida ii 8a
 
Unida ii 7a
Unida ii 7aUnida ii 7a
Unida ii 7a
 
2 unida 4
2 unida 42 unida 4
2 unida 4
 
2 unida 3
2 unida 32 unida 3
2 unida 3
 
2 unida 2
2 unida 22 unida 2
2 unida 2
 
2 unida 1
2 unida 12 unida 1
2 unida 1
 
Unida ii 6a
Unida ii 6aUnida ii 6a
Unida ii 6a
 
Unida ii 5a
Unida ii 5aUnida ii 5a
Unida ii 5a
 
Unida ii 4a
Unida ii 4aUnida ii 4a
Unida ii 4a
 
Post y codigos de error
Post y codigos de errorPost y codigos de error
Post y codigos de error
 
Apuntes apuntadores 2 a
Apuntes apuntadores 2 aApuntes apuntadores 2 a
Apuntes apuntadores 2 a
 
Apuntes apuntadores 1 a
Apuntes apuntadores 1 aApuntes apuntadores 1 a
Apuntes apuntadores 1 a
 

Apunfun2

  • 1. ARGUMENTOS POR OMISION CUANDO UNA FUNCION TIENE UN CIERTO NUMERO DE PARAMETROS, NORMALMENTE EL MISMO NUMERO DE ARGUMENTOS DEBEN INDICARSE CUANDO SE LLAMA A LA FUNCION. EN C++, SIN EMBARGO, ES POSIBLE OMITIR ALGUN ARGUMENTO. CUANDO SE OMITE EL ARGUMENTO DE UN PARAMETRO QUE ES UN ARGUMENTO POR DEFECTO, SE UTILIZA AUTOMATICAMENTE ESTE.
  • 2. EJEMPLO DE PARAMETROS POR OMISION #include <iostream.h> usingnamespacestd; void f(int a=10, int b=20,int c=30) { cout<<"a="<<a<<endl; cout<<"b="<<b<<endl; cout<<"c="<<c<<endl; } voidmain (void) { system(‘cls’); f(); f(1); f(1,5); f(1,2,3); cout<<"pulse enter para continuar"; system(‘pause’); }
  • 3. REGLAS DE ARGUMENTOS POR DEFECTO LOS ARGUMENTOS POR DEFECTO SE PASAN POR VALOR NO POR REFERENCIA. DESPUES DEL PRIMER VALOR POR DEFECTO TODOS OS ARGUMENTOS POSTERIORES DEBEN INCLUIR TAMBIEN VALORES POR DEFECTO. LOS VALORES DE LOS ARGUMENTOS POR DEFECTO, PUDEN SER VALORES, LITERALES O DEFINICIONES CONST, NO PUEDEN SER VARIABLES.
  • 4. PARAMETROS CONST DE UNA FUNCION CON EL OBJETO DE AÑADIR SEGURIDAD ADICIONAL A LAS FUNCIONES, SE PUEDEN AÑADIR A UNA DESCRIPCION DE UN PARAMETRO EL ESPECIFICADOR CONST, QUE INDICA AL COMPILADOR QUE SOLO ES DE LECTURA EN EL INTERIOR DE LA FUNCION, SI SE INTENTA ESCRIBIR EN ESTE PARAMETRO SE PRODUCIRA UN MENSAJE DE ERROR DE COMPILACION
  • 5. EJEMPLO FUNCIONES CONST #include <iostream.h> usingnamespacestd; void tratar(constint []); main() { system(‘cls’); int a[]={10,20,30}; tratar (a); cout<<"";cout<<a[0]<<a[1]<<a[2]; system(‘pause’); return 0; } void tratar (constint b[]) { b[0] /=2; b[1] /=2; b[2] /=2; }
  • 6. Funciones en linea (in line) Las funciones en línea sirven para aumentar la velocidad de su programa Las funciones en línea es una petición al compilador para que genere código en línea. No generara código en línea, si existe un bucle, un switch o un goto
  • 7. Ejemplo de funciones en linea #include <iostream.h> usingnamespacestd; inlinefloat suma(float, float); floata,b; main() { system(‘cls’); cout<<"dame el primer numero"; cin>>a; cout<<"dame el segundo numero"; cin>>b; cout<<"el resultado es"<<suma(a,b); system(‘pause’); return 0; } inlinefloat suma (floatd,float e) { returnd+e; }
  • 8. AMBITO (ALCANCE) SE DIVIDE EN AMBITO DE PROGRAMA AMBITO DE ARCHIVO FUENTE DECLARADA POR LA PALABRA STATIC. AMBITO DE FUNCION AMBITO DE BLOQUE
  • 9. VARIABLES LOCALES Y VARIABLES GLOBALES SE LE LLAMA VARIABLES GLOBALES A LAS QUE SE DECLARN FUERA DEL AMBITO DE PROGRAMA. SE LE LLAMA VARIABLES LOCALES A AQUELLAS QUE SE DECLARAN DENTRO DEL AMBITO DE PROGRAMA.
  • 10. CLASES DE ALMACENAMIENTO • El alcance de una variable se refiere a la región del texto fuente en C en el que la declaración de una variable es activa. • La duración de una variable se refiere a la gestión temporal del almacenamiento en memoria de una variable. • El alcance y duración de una variable quedan determinados por la clase de almacenamiento. ·C dispone de cuatro especificadores de clases de almacenamiento (auto, static, extern y register) y dos modificadores de clases de almacenamiento (const y volatile
  • 11. CLASES DE ALMACENAMIENTO Variables automáticas y estáticas Variable automática: su almacenamiento en memoria se asigna automáticamente según su alcance. Cuando termina su alcance el compilador libera esa posición de memoria perdiéndose su valor. Si se reingresa al alcance de la variable se asigna una nueva dirección. Variable fija o estática: tiene asignada una posición de memoria desde el inicio de ejecución del programa hasta el final del mismo. Esto significa que una variable estática conserva su valor cuando se vuelve a llamar a la función que la contiene.
  • 12. Ejemplo clase auto y static #include <iostream.h> usingnamespacestd; void incremento(void) { auto int j=1; staticint k=1; j++; k++; cout<<""; cout<< k;cout<<"";cout<< j;cout<<""; } intmain( void ) { system(‘cls’); incremento(); incremento(); incremento(); system(‘pause’); }
  • 13. Ejemplo clase extern #include <iostream.h> usingnamespacestd; void leer(void); float f; intmain() { system(‘cls’); leer(); cout<<"valor de float="<<f; system(‘pause’); return 0; } void leer(void) { externfloat f; cout<<"introduzca un valor en flotante"; cin >>f; system(‘pause’); }
  • 14. Ejemplo clase registro #include <iostream.h> usingnamespacestd; voidusoregistro(void) { registerint k; cout<<"contar con la variable registro"; for (k=1;k<=100;k++) cout<<""<<k; } main() { voidusoregistro(void); system(‘cls’); usoregistro(); system(‘pause’); return 0; }
  • 15. USO DE FUNCIONES DE BIBLIOTECA FUNCIONES DE CARÁCTER FUNCIONES DE PRUEBA DE CARACTERES ESPECIALES FUNCIONES DE CONVERSION DE CARACTERES FUNCIONES MATEMATICAS FUNCIONES NUMERICAS FUNCIONES TRIGONOMETRICAS FUNCIONES LOGARITMICAS Y EXPONENCIALES FUNCIONES ALEATORIAS FUNCIONES DE FECHA Y HORA FUNCIONES DE UTILIDAD
  • 16. VARIABLES GLOBALES Y LOCALES Variables automáticas y estáticas Las variables locales son automáticas por defecto. Se puede usar la palabra reservada auto para hacer automática una variable. Para hacer una variable estática se usa la palabra reservada static. • Las variables automáticas cuando se declaran e inicializan son reinicializadas cada vez que se ingresa a su bloque de alcance. Las variables estáticas se inicializan sólo una vez (por defecto valor 0).