0xC0000005 przy zwalnianiu pamięci (delete)
Ostatnio zmodyfikowano 2017-12-03 12:05
sppmacd Temat założony przez niniejszego użytkownika |
0xC0000005 przy zwalnianiu pamięci (delete) » 2017-12-03 11:46:47 Witam, mam problem ze zwalnianiem pamięci operatorem delete. Podczas wykonywania funkcji longToString program się wyłącza (Aplikacja przestała działać...). Używam biblioteki SFML, stąd ten sf::String |
Kodsf::String longToString( long l ) { int * u = new int[ 32 ]; long tmp = l; for( int i = 0; i < 32; i++ ) { u[ i ] = tmp % 10; tmp -= u[ i ]; tmp /= 10; } sf::String str; for( int i = 0; i < 32; i++ ) { str[ i ] = u[ 31 - i ] + 48; } if( u != NULL ) delete[] u; return str; }
Call stack #0 0x77342029 ?? () (??:??) #1 0x77371d8a ?? () (??:??) #2 0x77416e07 ?? () (??:??) #3 0x773b62d7 ?? () (??:??) #4 0x77371d8a ?? () (??:??) #5 0x765cb0f9 msvcrt!free() (C:\Windows\SysWOW64\msvcrt.dll:??) #6 0x740000 ?? () (??:??) #7 0x401812 longToString(l=0) (...\src\main.cpp:48) #8 0x40201e main() (...\src\main.cpp:128)
|
|
pekfos |
» 2017-12-03 12:00:35 Wpisujesz wartości do pustego stringa. |
|
sppmacd Temat założony przez niniejszego użytkownika |
» 2017-12-03 12:05:51 Musiałem zainicjalizować zmienną (dodać wszystkie 32 znaki) i wtedy działa. Dziękuję! |
|
« 1 » |