Ниже сообщение, которое я получаю, когда я запускаю мой код на ValgrindValgrind - Ошибка
значения1) неиницализированного было создано выделением стека == 16808 == в 0x400EC1: Init() (Hite.cpp: 90)
2) Invalid чтение размера 8
xmin=0.000000, xmax=1.000000, dx=0.010000, dt=0.000208, c=3.000000
==2763== Conditional jump or move depends on uninitialised value(s)
==2763== at 0x3E5420E836: __ieee754_exp (in /lib64/libm-2.12.so)
==2763== by 0x3E54224A81: exp (in /lib64/libm-2.12.so)
==2763== by 0x400F88: init() (Hite.cpp:96)
==2763== by 0x4010C8: main (Hite.cpp:114)
==2763== Uninitialised value was created by a stack allocation
==2763== at 0x400EC1: init() (Hite.cpp:90)
==2763==
==2763== Use of uninitialised value of size 8
==2763== at 0x3E5420E8EC: __ieee754_exp (in /lib64/libm-2.12.so)
==2763== by 0x3E54224A81: exp (in /lib64/libm-2.12.so)
==2763== by 0x400F88: init() (Hite.cpp:96)
==2763== by 0x4010C8: main (Hite.cpp:114)
==2763== Uninitialised value was created by a stack allocation
==2763== at 0x400EC1: init() (Hite.cpp:90)
Как мы по прибывшему этим ошибкам, возникающих
90 void init() {
91 double xmin=0;
92 double xavg = 0.5*(xmin+xmax);
int main(int argc,char **argv) {
112 printf("xmin=%f, xmax=%f, dx=%f, dt=%f, c=%f\n",
113 xmin=0,xmax=0,dx=0,dt=0,c=0);
114 init()
;
Можете ли вы показать строки вокруг Hite.cpp: 90, пожалуйста? – Grzegorz
Больше кода, пожалуйста, недостаточно, чтобы сказать, в чем проблема. – john
Вы возвращаете значение из функции? –