[Powered by Google Translate] Precedencia es cómo responder a la pregunta, ¿qué operación debemos hacer primero? Si la solución de ecuaciones matemáticas o líneas de análisis de código informático, hay reglas estrictas de prioridad a los que nos adherimos a fin de que todos los equipos y las personas pueden obtener el mismo resultado. En primer lugar, la regla más importante para recordar, sobre todo en las pruebas de error, es que siempre trabajamos desde los paréntesis exteriores más íntimos. El uso de paréntesis adicionales puede ser una táctica útil de depuración, pero no es una buena práctica basura su código con paréntesis innecesarios. Tome el tiempo para aprender las reglas básicas del operador de precedencia. La segunda regla general es que cuando los operadores tienen PRIORITARIAS iguales, sólo tiene que resolver de izquierda a derecha. Cuando se trata de simples matemáticas comenzamos con paréntesis, luego hacer la multiplicación y la división, y por último hacer la suma y la resta. La multiplicación y la división tienen la misma prioridad, porque son esencialmente realizando la misma operación. Después de todo división es simplemente multiplicando por el inverso de un valor. De manera similar, se resta simple adición de un valor negativo. Vamos a hacer un ejemplo. Siguiendo el orden de precedencia, vamos a empezar con los paréntesis. Nueve menos 1. Eso nos dará 8. Entonces podemos pasar a la división y la multiplicación. Vamos a resolver de izquierda a derecha. Así que 10 dividido por 2 es 5. Tenemos 5 veces 8 aquí, y eso nos dará 40. A continuación, pasamos a la siguiente orden de precedencia. Así que nos quedamos con 3 más 40 menos 1. Una vez más sólo la solución de izquierda a derecha, porque no es la misma prioridad entre la suma y la resta. Podemos decir 3 más 40 es 43, menos 1 es 42. Esa es nuestra respuesta. Hay 2 tipos de operadores decremento e incremento; La forma de prefijo, sufijo y la forma. La forma de sufijo, i + +, se utiliza comúnmente en los bucles, lo que significa que el valor actual se utiliza en la expresión, y luego se incrementa. Así único valor será diferente la próxima vez que se utiliza la variable. Por otra parte, el prefijo de incremento o decremento significa que el valor actual se incrementa o decrementa primero, y luego se utiliza en la expresión. Veamos un ejemplo con el entero x. Vamos a ponerlo igual a 5. Si utilizamos el operador de sufijo en él y decir x + +, x en esta línea es todavía 5. Si tuviéramos que imprimir obtendríamos el valor 5. Pero ir hacia adelante hecho x1 es igual a 6. Así que aquí, en esta línea x es igual a 6, y si lo imprime obtendríamos el valor 6. Ahora bien, si se utiliza el operador de prefijo, + + x, x se incrementa primero, y luego el valor se utiliza. Así que es igual a 7 en esta línea. Incremento de curso de 6 a 7, y si tuviéramos que imprimir obtendríamos el valor 7. El matiz último en precedencia que vamos a ver ocupa de notación puntero. El operador de indirección, estrella, tiene prioridad sobre los operadores matemáticos básicos, pero no en la incement sufijo y los operadores de decremento. Esto nos lleva a nuestro último ejemplo. Tomemos el entero x y ponerlo igual a 7. También vamos a hacer una y puntero y lo puso igual a la dirección de x. Así que cuando y eliminar la referencia que debemos obtener el valor 7. Ahora, en esta línea de código, tenemos una situación un tanto ambigua. Estamos dereferencing y primero, y luego incrementar el valor 7? ¿O estamos incrementando el puntero y luego dereferencing él? De hecho, debido a que el operador de incremento sufijo tiene prioridad sobre el operador de indirección, estamos tratando de incrementar el puntero y, que mover el puntero por el tamaño de bytes int. Esencialmente nos da una dirección en algún momento completamente diferente en la memoria, y entonces lo estamos eliminación de referencias. Así que esta es la línea de muy sentido. Si realmente quería incrementar el valor de 7, tendríamos que poner el operador para deshacer referencias con y entre paréntesis. Entonces podríamos incrementarlo. Así que mientras no nos incrementando el valor de x con la segunda a la última línea de código, en la última línea de código que haría y de hecho dereference para obtener el valor de x e incrementar eso. Nos quedaríamos con el valor de x es igual a 8. He aquí un resumen rápido de las reglas de precedencia que hemos hablado. Vamos a empezar con los paréntesis más internos y trabajar hacia fuera. Luego pasamos a los operadores de sufijo como i + + o i -. A continuación, eliminar la referencia y la dirección de los operadores como estrella xo x ampersand, y los operadores de prefijo, como i + + o - i. Por último hacemos las operaciones matemáticas sencillas, como la multiplicación, división, modulo. Entonces la suma, resta. Es precedencia. Soy Jordan Jozwiak, y esto es CS50. Haremos dereference y utilice la dirección y - cómo hacer que la frase? Ya he terminado. Bien.