代码执行之后提示错误。望各位大侠指点。
各位大侠们我按照理解重新将闰年的那个程序改写成下面的程序。但是我发现在gcc 下面可以执行成功。也可以运行。但是运行之后多一些。好像是什么指针发生了变化。请各位大侠指点下面程序的错误。 (执行的错误我也贴在下面)
#include <stdio.h>
void main ()
{
int year,leap;
scanf("%d",year);
if((year%4==0&&year%100!=0)&&(year%4==0&&year%100==0)&&(year%400==0))
{
leap=1;
}
else
leap=0;
if(leap)
printf("%d is a leap year\n",year);
else
printf("%d is not a leap year\n",year);
}
error:
*** glibc detected *** ./c10: free(): invalid pointer: 0x00382ce0 ***
======= Backtrace: =========
/lib/libc.so.6[0x264a31]
/lib/libc.so.6(exit+0x108)[0x224158]
/lib/libc.so.6(__libc_start_main+0xee)[0x20ccee]
./c10[0x8048381]
======= Memory map: ========
001d0000-001ee000 r-xp 00000000 fd:00 1325 /lib/ld-2.12.so
001ee000-001ef000 r--p 0001d000 fd:00 1325 /lib/ld-2.12.so
001ef000-001f0000 rw-p 0001e000 fd:00 1325 /lib/ld-2.12.so
001f6000-0037f000 r-xp 00000000 fd:00 1326 /lib/libc-2.12.so
0037f000-00380000 ---p 00189000 fd:00 1326 /lib/libc-2.12.so
00380000-00382000 r--p 00189000 fd:00 1326 /lib/libc-2.12.so
00382000-00383000 rw-p 0018b000 fd:00 1326 /lib/libc-2.12.so
00383000-00386000 rw-p 00000000 00:00 0
00bf6000-00c13000 r-xp 00000000 fd:00 1346 /lib/libgcc_s-4.4.6-20110824.so.1
00c13000-00c14000 rw-p 0001d000 fd:00 1346 /lib/libgcc_s-4.4.6-20110824.so.1
00f2c000-00f2d000 r-xp 00000000 00:00 0 [vdso]
08048000-08049000 r-xp 00000000 fd:00 300033 /root/temp/c10
08049000-0804a000 rw-p 00000000 fd:00 300033 /root/temp/c10
08bd8000-08bf9000 rw-p 00000000 00:00 0 [heap]
b78a6000-b78a7000 rw-p 00000000 00:00 0
b78b9000-b78bd000 rw-p 00000000 00:00 0
bfa31000-bfa46000 rw-p 00000000 00:00 0 [stack]
已放弃 (core dumped)