История изменений
Исправление
Forum0888,
(текущая версия)
:
Проблема в том, что в printf («A = %f \n»,a); ///Печатает -3.7
Память есть, но в ней не значение типа float.
То бишь спецификатор для значения float, а в памяти INT.
Можете просто попробовать вот такой код:
#include "stdio.h"
int main(){
float a=200;
printf ("A = %d \n",a);
return 0;
}
Си и C++ верят программисту, даже если код с UB.
Доскональный ответ можно получить лишь анализируя исходный код функции printf().
Ради интереса попробуйте вот так (с UB).
#include "stdio.h"
int main(){
char a=200;
printf ("A = %d \n",a);
return 0;
}
или так (c UB)
#include "stdio.h"
int main(){
char a=200;
printf ("A = %f \n",a);
return 0;
}
Исправление
Forum0888,
:
Проблема в том, что в printf («A = %f \n»,a); ///Печатает -3.7
Память есть, но в ней не значение типа float.
То бишь спецификатор для значения float, а в памяти INT.
Можете просто попробовать вот такой код:
#include "stdio.h"
int main(){
float a=200;
printf ("A = %d \n",a);
return 0;
}
Си и C++ верят программисту, даже если код с UB.
Доскональный ответ можно получить лишь анализируя исходный код функции printf().
Ради интереса попробуйте вот так.
#include "stdio.h"
int main(){
char a=200;
printf ("A = %d \n",a);
return 0;
}
или так (c UB)
#include "stdio.h"
int main(){
char a=200;
printf ("A = %f \n",a);
return 0;
}
Исправление
Forum0888,
:
Проблема в том, что в printf («A = %f \n»,a); ///Печатает -3.7
Память есть, но в ней не значение типа float.
То бишь спецификатор для значения float, а в памяти INT.
Можете просто попробовать вот такой код:
#include "stdio.h"
int main(){
float a=200;
printf ("A = %d \n",a);
return 0;
}
Си и C++ верят программисту, даже если код с UB.
Доскональный ответ можно получить лишь анализируя исходный код функции printf().
Ради интереса попробуйте вот так.
#include "stdio.h"
int main(){
char a=200;
printf ("A = %d \n",a);
return 0;
}
или так
#include "stdio.h"
int main(){
char a=200;
printf ("A = %f \n",a);
return 0;
}
Исправление
Forum0888,
:
Проблема в том, что в printf («A = %f \n»,a); ///Печатает -3.7
Память есть, но в ней не значение float.
То бишь спецификатор для значения float, а в памяти INT.
Можете просто попробовать вот такой код:
#include "stdio.h"
int main(){
float a=200;
printf ("A = %d \n",a);
return 0;
}
Си и C++ верят программисту, даже если код с UB.
Доскональный ответ можно получить лишь анализируя исходный код функции printf().
Ради интереса попробуйте вот так.
#include "stdio.h"
int main(){
char a=200;
printf ("A = %d \n",a);
return 0;
}
или так
#include "stdio.h"
int main(){
char a=200;
printf ("A = %f \n",a);
return 0;
}
Исправление
Forum0888,
:
Проблема в том, что в printf («A = %f \n»,a); ///Печатает -3.7
Память есть, но в ней не значение float.
То бишь спецификатор для значения float, а в памяти INT.
Можете просто попробовать вот такой UB:
#include "stdio.h"
int main(){
float a=200;
printf ("A = %d \n",a);
return 0;
}
Си и C++ верят программисту, даже если код с UB.
Доскональный ответ можно получить лишь анализируя исходный код функции printf().
Ради интереса попробуйте вот так.
#include "stdio.h"
int main(){
char a=200;
printf ("A = %d \n",a);
return 0;
}
или так
#include "stdio.h"
int main(){
char a=200;
printf ("A = %f \n",a);
return 0;
}
Исправление
Forum0888,
:
Проблема в том, что в printf («A = %f \n»,a); ///Печатает -3.7
Память есть, но в ней не значение float.
То бишь спецификатор для значения float, а в памяти INT.
Можете просто попробовать вот такой UB:
#include "stdio.h"
int main(){
float a=200;
printf ("A = %d \n",a);
return 0;
}
Си и C++ верят программисту, даже если код с UB.
Доскональный ответ можно получить лишь анализируя исходный код функции printf().
Ради интереса попробуйте вот так.
#include "stdio.h"
int main(){
char a=200;
printf ("A = %d \n",a);
return 0;
}
Исправление
Forum0888,
:
Проблема в том, что в printf («A = %f \n»,a); ///Печатает -3.7
Память есть, но в ней не значение float.
То бишь спецификатор для значения float, а в памяти INT.
Можете просто попробовать вот такой UB:
#include "stdio.h"
int main(){
float a=200;
printf ("A = %d \n",a);
return 0;
}
Си и C++ верят программисту, даже если код с UB.
Доскональный ответ можно получить лишь анализируя исходный код функции printf().
Исправление
Forum0888,
:
Проблема в том, что в printf («A = %f \n»,a); ///Печатает -3.7
Память есть, но в ней не значение float.
То бишь спецификатор для значения float, а в памяти INT.
Можете просто попробовать вот такой UB:
#include "stdio.h"
int main(){
float a=200;
printf ("A = %d \n",a);
return 0;
}
Си и C++ верят программисту, даже если код с UB.
Более полный ответ можно получить анализируя исходный код функции printf().
Исправление
Forum0888,
:
Проблема в том, что в printf («A = %f \n»,a); ///Печатает -3.7
Память есть, но в ней не значение float.
То бишь спецификатор для значения float, а в памяти INT.
Можете просто попробовать вот такой UB:
#include "stdio.h"
int main(){
float a=200;
printf ("A = %d \n",a);
return 0;
}
Си и C++ верят программисту, даже если код с UB.
Исходная версия
Forum0888,
:
Проблема в том, что в printf («A = %f \n»,a); ///Печатает -3.7
Память есть, но в ней не значение float.
То бишь спецификатор для значения float, а в памяти INT.
Можете просто попробовать вот такой UB:
int main(){
float a=200;
printf ("A = %d \n",a);
return 0;
}
Си и C++ верят программисту, даже если код с UB.