标题:问个关于动态分配内存的问题
取消只看楼主
kd83kdi93
Rank: 2
等 级:论坛游民
帖 子:65
专家分:52
注 册:2011-9-18
结帖率:70%
 问题点数:0 回复次数:1 
问个关于动态分配内存的问题
#include< stdio.h >
#include <malloc.h>
int main(void)
{
    int a,b,c,*p;
    printf("请输入元素的个数\n");
    scanf("%d",&a);
    p=(int *)malloc(a);
    printf("请输入元素\n");
    for (b=0;b<a;b++)
        scanf("%d ",&p[b]);
    for (c=0;c<a;c++)
        printf("%d ",p[c]);
}


      程序执行后   我输入3   然后要输入元素   但是要输入4个元素才能输出   输出是正确的但是输入的时候为什么要多输入一个元素呢?

     比如   它提示请输入元素个数  —》3   请输入元素 -》 3 4 5   它就不会输出   如果改成 3 4 5 6  它就会输出 3 4 5   。。。
搜索更多相关主题的帖子: 内存 include 元素 
2011-10-10 18:36
kd83kdi93
Rank: 2
等 级:论坛游民
帖 子:65
专家分:52
注 册:2011-9-18
得分:0 
回复 5楼 lj2lin
谢谢  我的问题解决了   确实是你说的问题
2011-10-11 12:34



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-352012-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.282261 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved