C de dentro a fuera
Contenido
Comentarios
Una línea
// Esto es un comentario Esto ya no;
Bloque
/* Desde el símbolo barra asterisco
hasta el símbolo asterisco barra
es un comentario */
Expresión
Una expresión es algo que tiene un valor. El valor puede ser un número entero, real (lo que en C es float) o carácter, básicamente.
Ejemplos
5 // entero
'a' // carácter
5.0 // float
5+10
1<3
Variables
Las variables permiten almacenar un valor y asociarlo con un nombre.
Los nombres de las variables empiezan por una letra y contienen letras, números y guiones bajos (_). Atención con dos cosas:
- Las mayúsculas y las minúsculas se distinguen en todas las cosas de C.
- No valen caracteres "raros", sólo los del inglés (nada de eñes ni de acentos).
Las variables son una expresión que contiene el valor asociado.
Ejemplos
variable // las variables son expresiones en sí
variable == 3 //En C se compara con ==
Sentencias
Son las partes del programa que tienen sentido. Acaban en punto y coma (;), con excepciones que veremos adelante.
Hay bastantes tipos.
Asignación
El valor de una expresión se puede guardar en una variable. Para asignar se usa =. No confundir con == que es el operador de igualdad (esto provoca muchísimos quebraderos de cabeza, porque a veces queremos comparar con algo y lo asignamos).
Ejemplos
variable = 5;
variable_caracter='a';
variable_float=5; //C transforma el 5 en 5.0 si es necesario
variable_float = variable + 3.0; //ahora transforma el entero en float
variable = variable +1; // aumenta en 1 el valor que tenía la variable
Abreviación
El último ejemplo también puede expresarse así:
variable +=1;
También se pueden usar -=, *=, /=, etc.
Nota:
Las asignaciones también son expresiones. Devuelven el nuevo valor de la variable
variable = 5; // devuelve 5
variable *=2; // ahora devuelve 10
variable2 = variable = 5; /* como la asignación es una expresión, una asignación también puede asignarse. Sirve para dar a varias variables el mismo valor.*/
Sentencias de control
Hacen variaciones sobre el flujo normal del programa (que consiste en ejecutar las sentencias una tras otra).
Enumero las más importantes:
if (<condicion>) <sentencia> //Se ejecuta si <condicion> es verdadera (distinto de 0). if (<condicion>) <sentencia1> else <sentencia2> //Se ejecuta si no se cumple la condicion while (<condicion>) <sentencia> //Se ejecuta mientras la condicion sea cierta for ( <inicializacion> ; <condicion> ; <paso> ) <sentencia>
Esta es más complicada. Al principio del bucle se hace <inicializacion>. Cada iteración se hace <paso> y se ejecuta la <sentencia>. Se sale del bucle cuando deje de cumplirse la condición. <inicializacion> y <paso> son sentencias, y <condicion> es una expresión numérica.