2017-04-23 2 views
-2

Ich bin mit Ubuntu virtuellen Box codieren und wenn ich versuche, diesen folgenden Code auszuführen, zeigt es die Segmentierungsfehler (Core Dumped). Warum passiert das? Was soll ich machen?Ich bekomme Segmentierung Fehler (Core Dump) in Ubuntu Virtual Terminal bei der Ausführung eines C-Code, hier erwähnte ich den folgenden Code

#include <stdio.h> 

int main() { 
    int n, sum = 0, c, value; 

    printf("Enter the number of integers you want to add\n"); 
    scanf("%d", &n); 

    printf("Enter %d integers\n",n); 

    for (c = 1; c <= n; c++) { 
     scanf("%d", &value); 
     sum = sum + value; 
    } 
    printf("Sum of entered integers = %d\n",sum); 
    return 0; 
} 
+3

Es ist nichts falsch mit dem obigen Code. Es kompiliert und läuft in Ordnung. [ideone] (https://ideone.com/V226yY) –

+0

gibt es irgendwelche Probleme mit der Speicherzuweisung so? – Maddy

+2

Sie ordnen hier (dynamisch) keinen Speicher zu. Sie sind hier lokale Variablen. Also was meinst du. Kannst du hier einfügen, wie du den Code und die Fehlermeldungen vom Terminal kompiliert hast? Vielleicht machst du etwas anderes –

Antwort

0

, warum dies geschieht?

Es scheint nichts falsch mit dem Code zu sein, den Sie zeigen. Wenn dieser Code tatsächlich abstürzt, muss es wegen etwas sein, das Sie nicht zeigen.

Wenn könnte sein, dass Ihr System vollständig unterbrochen ist (tut /bin/date Arbeit? Funktioniert /bin/sleep 1 Arbeit?), Oder weil Sie eine andere binäre von dem Laufen Sie denken, Sie sind, oder ...

was soll ich machen?

Erfahren Sie, wie Sie debuggen. Erstellen Sie Ihr Programm mit -g Flag, und führen Sie es unter Debugger (die Ihnen , wo Ihr Programm abstürzt) sagen wird.

Hier ist ein handliches starting point.

Verwandte Themen