Hechos y preguntas relacionadas con el estilo de escritura de programas en C/C++

Aquí hay algunas preguntas relacionadas con el estilo de escribir programas en C:

Pregunta-1:
¿Por qué i++ se ejecuta más rápido que i + 1?
Respuesta-1: La expresión i++ requiere una sola instrucción de máquina, como INR, para realizar la operación de incremento, mientras que i + 1 requiere más instrucciones para realizar esta operación.

Pregunta 2: ¿Escribir if(! strcmp(s1, s2) ) es un buen estilo?
Respuesta-2: No, este no es un buen estilo porque if(! strcmp(s1, s2) ) invoca un comportamiento indefinido, por lo que podría ser confuso.

Pregunta 3:
¿Cuál es el mejor estilo para el diseño del código en C?
Respuesta-3: Se recomiendan muchos sistemas de sangría, pero todos tienen el mismo defecto básico. Engañarán al lector cuando la lógica del código real no siga la sangría. Es mejor evitar la sangría por completo, para que el lector no se deje engañar.

Pregunta-4: ¿ Goto es algo bueno o algo malo?
Respuesta-4: Debemos evitar usar la declaración goto, úsela solo cuando sea necesario.

Pregunta 5: ¿Por qué el operador de incremento previo es más rápido que el operador de incremento posterior?
Respuesta-5: La evaluación de cualquier expresión es de izquierda a derecha. El operador de preincremento es más rápido que el operador de postincremento porque no guarda el valor actual para la siguiente instrucción, mientras que el postincremento necesita guardar el valor actual para incrementarlo después de la ejecución de la instrucción actual.

Pregunta-6: ¿Cuál es la salida de printf («% d»)?
Respuesta-6: printf(“%d”, i) significa que el compilador imprimirá el valor de i, ya que no hay nada después de %d, por lo que el compilador mostrará el valor basura en la ventana de salida.

Publicación traducida automáticamente

Artículo escrito por mohitw16 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *