El lenguaje de programación C - Operadores - Isidro González Caballero ( Introducción a la Física Computacional Curso
2 Operadores aritméticos OperadorFunciónUso = asignación int i = 7; * multiplicación double r = 3.5 * i; / división double t = r / 1.2; % modulo (resto) i = 21 % 6; // i = 3 + suma double rt = r + t; - resta r = rt – t; ++,-- incremento int i = 0; int j = i++; //j = 0 int k = --i; //k = 0 +=,-=, *=,/= opera y asigna r += 2.6; //r = r r *= 2.6; //r = r * 2.6
Observaciones Op. aritméticos a++ es más eficiente que a+=1 a+=n es más eficiente que a=a+n No se produce conversión de tipos: – La división de enteros es un número entero OJO! – Para convertir enteros a reales se puede multiplicar por 1.0 La precedencia de los operadores es, en general, la que esperarías matemáticamente: – Se pueden usar paréntesis ‘ (…) ’ para agrupar operaciones – Orden: 3 Más ()++ --* / %+ -= += -= *= /= %= Menos
4 Operadores lógicos OperadorFunciónUso < menor que i < 5 <= menor o igual que r <= 5 > mayor que i > 5 >= mayor o igual que i >= 5 == igualdad i == 5 != desigualdad i != 5 ! NOT lógico !(i==5); //(i != 5) && Y lógico i 4 || O lógico i 4
Observaciones Op. lógicos El resultado de una operación lógica es «cierto» (true) o «falso» (false) – El valor 0 es equivalente a «falso» – Cualquier valor distinto de 0 es equivalente a «cierto» No se debe confundir el operador de asignación (=) con el de comparación (==) – Es un error típico usar = cuando se debe usar == – El compilador no avisa Precedencia: 5 Más ()! >=== !=&&|| Menos