c语言中怎样定义一个未知长度的数组??

 我来答
手机用户97362
2015-04-02 · 超过51用户采纳过TA的回答
知道答主
回答量:90
采纳率:0%
帮助的人:99.8万
展开全部
设置值等于null就行了 追问: 给个例子白?? 小弟 是自学的!悟性低啦??谢谢!! 回答: int[] a=null; 就是把 数组 a的值设置为空。所以系统没有为他分配内存,等你给数组a赋值的时候 系统会自动给他分配相应的内存 追问: 我在手机上的搜索貌似说的是用到 链表 和指针神魔的??但是找不到啦!!麻烦您能帮忙给个例子不??谢谢!! 回答: 链表 指针 需要用这么麻烦吗。 我从没这样弄过。 你需要的是一个未知长度的 数组 ,所以不给这个数组赋值就是最好的。 比如int[] a; 这就是申明一个 数组变量 a ,但没给他赋值 所以他就没有长度 追问: 哦 好吧!!嘿嘿!!谢谢啦!!知道啦!! 回答: 速度选个满意呗
金鱼8884
推荐于2017-10-09 · 知道合伙人数码行家
金鱼8884
知道合伙人数码行家
采纳数:124 获赞数:14950
学生

向TA提问 私信TA
展开全部

  除常量数组外,数组必须是定长的,如果不知道长度,有几种办法,固定分配一个认为不会出现的维度值,或者对数组进行动态分配,如:

int *pArray,nCount;
int Insert(int * pArray,int nCount,int nElement)
{
  int *pInt;  
 
    pInt = new int[nCount+1];
     if(nCount>0)memcpy(pInt,nArray,nCount);
     pInt[nCount++] =  nElement   ;
     if(pArray)delete   pArray;
    pArray =  pInt;
   return nCount;

main()
{
   nCount = 0,pArray = NULL;
    nCount  = Insert(pArray,nCount,99);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式