Jak debugować projekt w C ++ za pomocą Qt Creator?

Sep 26 2020

Próbuję użyć Qt Creator na macOS do debugowania projektu C ++, ale wydaje się, że utknąłem na czymś. Sprawdź zrzut ekranu poniżej.

Chciałbym zobaczyć zawartość tablicy charset.

czy robię coś źle? Jakieś sugestie?

Odpowiedzi

1 jpo38 Sep 29 2020 at 04:09

Doświadczyłem tego samego w przeszłości, próbując debugować na urządzeniach z Androidem.

Jeśli nie używasz najnowszej wersji QtCreator, powinieneś to zrobić.

Jeśli problem będzie się powtarzał, powinieneś zgłosić błąd Qt: https://bugreports.qt.io/. Następnie, miejmy nadzieję, naprawią to w następnej wersji.

AllenZHU Sep 26 2020 at 06:57

Używam CDB do debugowania tego samego kodu i działa normalnie.

mzimmers Sep 26 2020 at 14:55

Na podstawie żółtych trójkątów ostrzegawczych na Twoim zdjęciu wygląda na to, że model kodu ostrzega, że ​​używasz niezainicjowanych danych. (Właściwie jestem zaskoczony, że Twój kompilator pozwolił ci to zrobić.) Zastanawiam się, czy tablica, którą próbujesz odczytać, została zoptymalizowana, a debugger nie wie, co wyświetlić.

Sugerowałbym zainicjowanie tej tablicy i sprawdzenie, czy debugger może następnie pokazać zawartość.

TonyK Sep 29 2020 at 19:48

Widzę trzy potencjalne problemy z twoim kodem:

Błąd nr 1: nie inicjalizuje się charsetdo zera (używając memset), więc będzie zawierał nieprzewidywalne wartości.

Bug # 2: Nigdy tablicą, więc dostępna pamięć będzie coraz mniejsze i mniejsze, jak przebiegów programu. (Możesz naprawić te dwa błędy, deklarując )deletecharsetbool charset[256];

Potencjalny błąd nr 3: valto plik char. Więc jeśli charjest podpisany domyślnie w twoim systemie, to valmoże być ujemny i nie nadaje się do użycia jako indeks tablicy.

Ale nie wiem, dlaczego nie możesz zbadać zawartości charset.