Этот код:
#include <stdio.h>
#define SIZE 10
int main(){
int a[SIZE]={2,6,4,8,10,12,89,68,45,37};
int pass;
int i;
int hold;
int dim=10;
printf("Data items in original order\n");
for(i=0; i<SIZE; i++){
printf("%4d", a[i]);
}
for(pass=1; pass<SIZE; pass++){
for(i=0; i<dim; i++){
if(a[i]>a[i+1]){
hold=a[i];
a[i]=a[i+1];;
a[i+1]=hold;
}
}
dim--;
}
printf("\nData items in ascending order\n");
for(i=0; i<SIZE; i++){
printf("%4d", a[i]);
}
printf("\n");
return 0;
}
дает мне эту ошибку:
Data items in original order
2 6 4 8 10 12 89 68 45 37
Data items in ascending order
2 4 6 8 10-98850560 12 37 45 68
*** stack smashing detected ***: ./prog terminated
Почему? Я не понимаю Пожалуйста, объясни мне это. Большое спасибо. Я просто не понимаю Я не понимаю Пожалуйста, помогите мне. Я не знаю что делать Пожалуйста.