Tema 3 Declaraciones Identificadores Variables Variables Variables

Anuncio
Declaraciones
• Es necesario poder declarar
Tema 3
– Constantes
• Nombre
• Valor
– Variables
Declaraciones
• Nombre
• Tipo
• Valor inicial
– Funciones
•
•
•
•
Nombre
Parámetros
Salida
Cuerpo
iwi-131 - Tema 3
Identificadores
• Un identificador es el nombre que identifica una
constantes, variable o función.
• La elección del nombre debe cumplir ciertas
reglas.
–
–
–
–
–
–
Longitud ilimitada
Debe partir con una letra o subrayado
No se aceptan .,; -+*/?¿!¡=&%$#@|(){}[]…. etc
Deben ser únicos en su ámbito
Diferencian minúsculas de mayúsculas
No puede coincidir con una palabra clave o función de
biblioteca.
Variables
• Posición de memoria donde se almacena un
dato.
• Se define
– Un nombre: para poder recuperar su valor
– Un tipo: restringe los valores que puede
almacenar
iwi-131 - Tema 3
iwi-131 - Tema 3
Variables
Variables locales
• Declaración de variables
tipo nombre1, nombre 2, …
• Ej:
int a;
int b,c,d ;
• Lugares de declaración
– Dentro de una función (variables locales)
– Como un parámetro (parámetros formales)
– Fuera de las funciones (variables globales)
iwi-131 - Tema 3
• Se definen dentro de una función.
• Deben tener un nombre único dentro de la
función.
• Solo pueden ser utilizadas dentro de la función.
• Esto es ampliable a cualquier bloque de código.
• Se definen todas juntas al comienzo del bloque.
• Se puede especificar un valor inicial.
iwi-131 - Tema 3
1
Variables locales
Variables locales
void main(){
int x=10 ,y=20 ;
Fin de la declaración
printf("x:%d , y:%d \n",x,y);
}
void main(){
int x=10 ;
int y=20 ;
printf("x:%d , y:%d \n",x,y);
}
int x=10;
Tipo
Nombre
Inicialización
Error
iwi-131 - Tema 3
void main(){
int x=10 ;
printf("x:%d , y:%d \n",x,y);
int y=20 ;
}
iwi-131 - Tema 3
Variables locales
void f(){
printf("x:%d , y:%d\n",x,y );
}
void main(){
int x=10,y=20;
Error
f();
}
Variables locales
void main(){
int x=10,y=20;
{
int x=100 ;
int y=200 ;
printf("x:%d , y:%d\n",x,y );
}
printf("x:%d , y:%d\n",x,y );
}
x:100 , y:200
x:10 , y:20
iwi-131 - Tema 3
iwi-131 - Tema 3
Parámetros formales
Parámetros formales
• Son los datos de entrada de las funciones.
• Se comportan exactamente igual que las
funciones locales.
• Puede ser una lista de parámetros.
• Cada parámetro debe especificar su tipo.
void f(int a,int b){
printf("a:%d , b:%d\n",a,b );
}
void main(){
int x=10,y=20;
a:10 , b:20
f(x,y);
}
iwi-131 - Tema 3
iwi-131 - Tema 3
2
Variables globales
• Se declaran antes del cuerpo del programa
• Se declaran en forma idéntica a las locales.
• Se pueden acceder desde cualquier parte de
código.
• Si una función la modifica, todo el resto
tiene acceso al nuevo valor.
Variables globales
int z=100;
void f(int a,int b){
printf("a:%d , b:%d\n",a,b);
printf("z:%d\n",z);
}
void main(){
int x=10,y=20;
printf("z:%d\n",z);
z=1000;
f(x,y);
}
z:100
a:10 , b:20
z:1000
iwi-131 - Tema 3
iwi-131 - Tema 3
Constantes
Constantes sin nombre
• Constantes sin nombre
– Números
– Letras
– Palabras
• Números:
– Notación entera: (0..9)+
– Notación octal: 0(0..9)+
– Notación hexadecimal: 0x(0..9)+
• Constantes con nombre
– Identificadores
• Ej:
– 102
– 0102
– 0x102
iwi-131 - Tema 3
iwi-131 - Tema 3
Constantes sin nombre
Constantes sin nombre
• Caracteres
– (a..zA..Z)
– Se declaran entre comillas simples
• Caracteres especiales
– Tiene un backslash al comienzo
– Se ven dos caracteres pero es solo uno
• Palabras
– Son cadenas de caracteres
– Se declaran entre comillas dobles
– Tratamiento complejo
• Ej:
• Ej:
– ‘a’
– ‘ \n’
– ‘ \t’
– “hola”
– “adios\n”
iwi-131 - Tema 3
iwi-131 - Tema 3
3
Constantes sin nombre
void main(){
int x=20,y= 020 ,z=0x20;
char c1='a' ,c2='\t',c3='b' ;
char* s="hola";
printf("x:%d , y:%d , z:%d\n",x,y,z);
printf("%c%c%c \n",c1,c2,c3);
printf("%s\n",s);
}
x:20 , y:16 , z:32
a
b
hola
Constantes con nombre
• Deben definir un nombre y un valor
• El nombre sigue las reglas de un
identificador
• Su valor no puede cambiar durante el
programa
• Dos maneras
– const (modificador de acceso)
– #define (instrucción del preprocesador)
iwi-131 - Tema 3
iwi-131 - Tema 3
Constantes con nombre
Comentarios
const int z=100;
#define w 200
void f(const int a,int b){
printf("a:%d , b:%d\n",a,b );
printf("z:%d , w:%d\n",z,w );
}
void main(){
int x=10,y=20;
printf("z:%d , w:%d\n",z,w );
z=1000;
w=2000;
f(x,y);
}
z:100 , w:200
a:10 , b:20
- Tema 3
z:100 ,iwi-131
w:200
• Texto que se agrega al código fuente por claridad.
• Sirven para explicar
– el funcionamiento de un programa o función.
– La utilidad de una palabra.
– La lógica de un algoritmo.
– Obviar código erróneo o de prueba
• Fundamentales como “buena práctica” de
programación.
iwi-131 - Tema 3
Comentarios
• Dos versiones
– De una sola línea
– De varias líneas
Comentarios
/*
nombre funcion: f
Parametros: ninguno
Objetivo: obtener el resultado del calculo
Autor: JPM
*/
void f(){
…
}
void main (){
//variables principales
int x, y;
//int z=1000;
//Obtener resultado de calculo
f();
}
iwi-131 - Tema 3
iwi-131 - Tema 3
4
Comentarios
• Los comentarios se eliminan del código
fuente antes de compilar
• Es otra tarea del preprocesador
Fin Tema 3
Declaraciones
iwi-131 - Tema 3
5
Descargar