level 2
种风格1P
楼主
# include <stdio.h>
# include <malloc.h>
int main(void)
{
int len = 1;
/*
我知道我这里无论是 len=1 还是 len=0 都是有问题的;
我是想知道我len=1时,vc++6.0报错,而codeblocks为啥不报错
是codeblocks有bug还是两个编译器处理逻辑问题的方式不同。
*/
int * p;
char * q;
int i;
printf("%d\n", len);
p = (int *)malloc(4 * len);
printf("%d\n", len);
q = (char *)malloc(1 * len);
printf("%d\n", len);
printf("请输入几个整数,以空格隔开,按下\"回车\"结束输入\n");
for (len=0; len>=0; len++)
{
scanf("%d", &p[len]);//&*(p+len)
scanf("%c", &q[len]);
if(q[len] == '\n')
break;
}
for (i=0; i<=len; i++)
{
printf("%d\n", p[i]);
}
free(p);
free(q);
return 0;
}

2014年12月20日 21点12分
1
# include <malloc.h>
int main(void)
{
int len = 1;
/*
我知道我这里无论是 len=1 还是 len=0 都是有问题的;
我是想知道我len=1时,vc++6.0报错,而codeblocks为啥不报错
是codeblocks有bug还是两个编译器处理逻辑问题的方式不同。
*/
int * p;
char * q;
int i;
printf("%d\n", len);
p = (int *)malloc(4 * len);
printf("%d\n", len);
q = (char *)malloc(1 * len);
printf("%d\n", len);
printf("请输入几个整数,以空格隔开,按下\"回车\"结束输入\n");
for (len=0; len>=0; len++)
{
scanf("%d", &p[len]);//&*(p+len)
scanf("%c", &q[len]);
if(q[len] == '\n')
break;
}
for (i=0; i<=len; i++)
{
printf("%d\n", p[i]);
}
free(p);
free(q);
return 0;
}




