Red de conocimiento informático - Conocimiento informático - Los bucles infinitos se utilizan a menudo en sistemas integrados. ¿Cómo escribir bucles infinitos en C?

Los bucles infinitos se utilizan a menudo en sistemas integrados. ¿Cómo escribir bucles infinitos en C?

Este problema tiene varias soluciones. Mi solución preferida es:

while(1){}?

Algunos programadores prefieren la siguiente solución:

for(;;)

{}?

Esta implementación me da vergüenza porque la sintaxis no expresa exactamente lo que está pasando. Si un candidato ofrece esto como solución, aprovecharé esta oportunidad para explorar las razones por las que lo hace. Si su respuesta básica es: "Me enseñaron a hacer esto pero nunca pensé por qué", eso me deja una mala impresión.

La tercera opción es usar goto

Loop:

...

goto Loop;?

Si el candidato da la solución anterior, significa que o es un programador en lenguaje ensamblador (lo cual puede ser algo bueno) o es un programador BASIC/FORTRAN que quiere ingresar a un nuevo campo.

¿Declaraciones de datos?

5. Utilice la variable a para dar la siguiente definición

a) ¿Un número entero?

b) Un puntero ¿a un número entero?

c) Un puntero a un puntero que apunta a un número entero ( Un puntero a un puntero a un número entero)

d) ¿Una matriz de 10 números enteros?

d) p>

e) Una matriz de 10 punteros Matriz, el puntero apunta a un número entero.

(¿Una matriz de 10 punteros a números enteros)?

f) ¿Un puntero a una matriz de 10 números enteros?

g) Un puntero a una función que toma un número entero como argumento y ¿devuelve un número entero?

h) Uno tiene 10 Una matriz de diez punteros a funciones que toman un argumento entero y devuelven un número entero (Una matriz de diez punteros a funciones que toman un argumento entero y devuelven un número entero)

La respuesta es:?

a) int a; // ¿Un número entero?

b) int *a; // ¿Un puntero a un número entero?

c) int **a; // ¿Un puntero a un puntero a un número entero?

d) int a[10] // ¿Una matriz de 10 números enteros?

e) int * a[10]; // ¿Una matriz de 10 punteros a números enteros?

f) int (*a)[10] // Un puntero a una matriz de 10 ¿enteros?

g) int (*a)(int); // ¿Un puntero a una función a que toma un argumento entero y devuelve un número entero?

h) int (* a[10])(int) ; // ¿Una matriz de 10 punteros a funciones que toman un argumento entero y devuelven un número entero?

La gente suele afirmar que hay varias preguntas aquí que requieren leer un libro para respuesta Estoy de acuerdo con este tipo de afirmación. Cuando escribí este artículo, revisé el libro para asegurarme de que la gramática fuera correcta. Pero cuando me entrevistan, espero que me hagan esta pregunta (o algo parecido). Porque durante el tiempo que me entrevistaron, me aseguré de saber la respuesta a esta pregunta. Si el candidato no sabe todas las respuestas (o al menos la mayoría de las respuestas), entonces no está preparado para la entrevista. Si el candidato no está preparado para la entrevista, ¿por qué debería estarlo?

¿Estática?