我到第三測資點時就跑出如題東西~~請問為什麼會跑出那個東西,以下是我的程式碼
第一和第二測資點都沒問題
#include<stdio.h>
#include<string.h>
int main()
{
char a[]=" ",d;
int b,i,g;
while(scanf("%s",&a)!=EOF){
b=strlen(a);
if(b%2==0){
for(i=0;i<b/2;i++){
d=a[b-i-1];
a[b-i-1]=a[i];
a[i]=d;
}
}
else{
for(i=0;i<(b-1)/2;i++){
d=a[b-i-1];
a[b-i-1]=a[i];
a[i]=d;
}
}
g=atoi(a);
printf("%d\n",g);
}
}
第三測資點會跑出
系統呼叫了 abort 函式! *** stack smashing detected ***: /3321651/code_3321651.exe terminated Aborted (core dumped)
a給個大小吧
給的大小可以大一點 我給太小也會出現跟你一樣的狀況喔