es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Tag: UNDEFINED-BEHAVIOR

Se supone que debe tomar el número de materias como entrada, tomar las calificaciones correspondientes y mostrar el promedio de las calificaciones, pero no está funcionando…

#include <stdio.h> #include <stdlib.h> int main() { int n, tg=0; printf(“Ingrese el número de asignaturas: “); scanf(“%d”, &n); while (n>0) { int grade; printf(“Ingrese las calificaciones: “); scanf(“%d”, &grade); n–; tg+=grade; } float avg; avg = (tg/n); printf(“\nSu Promedio es %f\n”, avg); return 0; } /* Se supone que debe . . . Read more

¿Por qué Linux no puede escribir más de 2147479552 bytes?

En man 2 write la sección NOTES contiene la siguiente nota: En Linux, write() (y llamadas al sistema similares) transferirán como máximo 0x7ffff000 (2.147.479.552) bytes, devolviendo el número de bytes realmente transferidos. (Esto es válido tanto en sistemas de 32 bits como en sistemas de 64 bits.) ¿Por qué es . . . Read more

Entendiendo el ensamblador no optimizado de GCC para la UB n = ++n + ++n – ¿por qué incrementar dos veces antes de desplazar?

Entiendo que este comportamiento es indefinido y nadie realmente escribe código como este. Sin embargo, tengo curiosidad por saber qué haría el compilador con este fragmento de código. Compilé utilizando tanto clang como gcc para hacer una comparación. Sin optimizaciones. Aquí está el ensamblado generado por clang: # clang -O0 . . . Read more