Ядро ошибки сегментации сбрасывается при использовании подписки массива - PullRequest
1 голос
/ 19 сентября 2011

Я пытаюсь реализовать довольно простую программу, но получаю выгруженное ядро. Есть идеи, что я делаю неправильно?

#include <stdio.h>

int
main(void){


    char *number [] = {"one","two","three","four","five","six","seven","eigth","nine"};
    char *object [] = {"sf","sfe","sefg","efsef","seg","eshse","segeg","ryte","asrh","asegh"};

    for(int i=0;i<10;i++){

        printf("In this code %s\n this should %s\n work\n\n",number[i],object[i]);


    }


}

Ответы [ 2 ]

1 голос
/ 19 сентября 2011

У вас классическая ошибка «выключено одним». В вашем массиве 'number' слишком мало элементов. В object есть десять элементов, но в number.

только девять.
1 голос
/ 19 сентября 2011

Джо правильно понял: у вас в цикле от 0 до 9, то есть десять предметов.Вы хотите от 0 до 8.

Это очень распространенная ошибка новичка, кстати.

Шаблон

for index = 0; while index is less than length; add one to index
...