Bu programı yazdım ve derlediğimde çöküyor. Yürütülebilir dosyanın çalışmayı durdurduğunu ve Windows'un bir çözüm bulmaya çalıştığını söylüyor. Bağlantılı bir listeye bir düğüm eklemek için yazdığım bu addPage işlevinde bir yer sorun olduğuna inanıyorum, ancak sorunun neden olduğundan emin değilim.Bağlantılı listeye düğüm eklemeye çalışırken program çöküyor
void initPage(struct page *head, string programName) {
// Assign Properties of the First Node in the Linked List
head->programName = programName;
head->nextPage = NULL;
}
void addPage(struct page *head, string programName) {
// Initialize First Page if Not Initialized
if (head == NULL) {
initPage(head, programName);
return;
}
// Setup the New Page
page *newPage = new page;
newPage->programName = programName;
newPage->nextPage = NULL;
// Set the Pointer to the Beginning of the Linked List
page *current = head;
// While Traversing the Linked List
while(current) {
// If the End of the List is Reached, Append the Page
if (current->nextPage == NULL) {
current->nextPage = newPage;
return;
}
// Grab the Next Page (If not at the End of the Page)
current = current->nextPage;
}
}
Hata ayıklama yardımını arayan sorular ("neden bu kod çalışmıyor?") Istenen davranışı, belirli bir sorunu veya hatayı ve sorunun kendisinde çoğaltılması için gereken en kısa kodu içermelidir. Açık bir problem bildirimi olmayan sorular diğer okurlar için yararlı değildir. Bakınız: Minimal, Tam ve Doğrulanabilir bir örnek nasıl oluşturulur? http://stackoverflow.com/help/mcve – xaxxon
@Rinzler http://ericlippert.com/2014/03/05/how-to-debug-small-programs/ – Biffen
Kazayı yakalamak için bir hata ayıklayıcısında çalışmayı denediniz mi? eylemde Nerede gerçekleşir? İlgili değişkenler iyi görünüyor mu? Bu işlevi nasıl çağırıyorsunuz? Fonksiyonu ne zaman çağırıyorsun? Nereden işlev çağırıyorsun? Fonksiyona ilettiğiniz argümanlar nelerdir? İlk aramayı bozuyor mu? İkinci? Görünüşte rasgele mi? –