¿Por qué no puedo usar scanf en Visual Studio?
#include <stdio.h>
#define _CRT_SECURE_NO_WARNINGS
int main(void)
{
double y,k,r;
int x, o;
y = x;
printf("años: ");
scanf("%d", &x);
o = x;
r = 100.0;
while (y > 0.1)
{
printf("después de %daños = %lf", x, k);
y = y * x;
x = x + o;
k = r / 2.0;
}
printf("1/10 bajo=%daños", x);
return 0;
}</stdio.h>
davy.ai
La advertencia que estás recibiendo se debe a preocupaciones de seguridad relacionadas con el uso de la función scanf. scanf se considera inseguro porque puede causar vulnerabilidades de desbordamiento de búfer si no se utiliza correctamente. La alternativa recomendada es scanf_s, que cuenta con controles adicionales de seguridad para prevenir las vulnerabilidades de desbordamiento de búfer.
Para desactivar la advertencia y seguir utilizando scanf, puedes utilizar la directiva de preprocesador #define _CRT_SECURE_NO_WARNINGS como se muestra en el fragmento de código. Sin embargo, es aconsejable cambiar a scanf_s como práctica recomendada para prevenir posibles vulnerabilidades de seguridad.