亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

怎么存放一個自增的數組,這個數組會一直增下去

怎么存放一個自增的數組,這個數組會一直增下去

xungeer29 2017-11-02 20:12:04
還有用什么來定義這個數組
查看完整描述

2 回答

已采納
?
慕用4063026

TA貢獻195條經驗 獲得超115個贊

#include<stdio.h>?

#include<stdlib.h>?

#define?BLOCK_SIZE?20?

//

每次

長大

的時候都要去申請新的內存空間,拷貝需要花時間。

?

//may?fail?in?memory?restricted?situation?

typedefstruct?

{?

?

int?*array;?

?

int?size;?

}?Array;?

//

創建新數組

?

Array?array_create(intinit_size)?

{?

?

Array?a;?

?

a.array=(int*)malloc(sizeof(int)*init_size);?

?

a.size=init_size;?

?

return?a;?

}?

//

釋放內存空間

?

void?array_free(Array?*a)?

{?

?

free(a->array);?

?

a->size=0;?

?

a->array=NULL;?

}?

//

得到當前數組的長度(不見得是元素的個數)

?

intarray_size(const?Array?*a)?

{?

?

return?a->size;?

}?

//

獲取該下標下的元素

?

int*?array_at(Array?*a,int?index)?

{?

?

void?array_inflate(Array?*a,intmore_size);//

函數申明

?

?

if(index>=a->size)?

?

{?

?

?

array_inflate(a,(index/BLOCK_SIZE+1)*BLOCK_SIZE-a->size);//**?

?

}?

?

return?&(a->array[index]);?

}?

void?array_inflate(Array?*a,intmore_size)?

{?

?

inti;?

?

int?*p=(int?*)malloc(sizeof(int)*(a->size+more_size));//**?

?

for(i=0;i<a->size;i++)?

?

{?

?

?

p[i]=a->array[i];?

?

}?

?

free(a->array);//**?

?

a->array=p;//**?

?

a->size+=more_size;?

}?

intmain(intargc,charconst?*argv[])?

{?

?

Array?a=array_create(5);?

?

int?j;?

?

for(j=0;j<10;j++)?

?

{?

?

?

*array_at(&a,j)=j+1;?

?

}?

?

for(j=0;j<10;j++)?

?

{?

?

?

printf("%d?

?

",*array_at(&a,j));?

?

}?

?

printf("\n%d\n",array_size(&a));?

?

array_free(&a);?

?

return?0;?

}?

//

輸出

?

//1?

?

2?

?

3?

?

4?

?

5?

?

6?

?

7?

?

8?

?

9?

?

10?

//20


查看完整回答
1 反對 回復 2017-11-03
  • xungeer29
    xungeer29
    會增加到超出int、string等可儲存范圍,這時候怎么存儲
  • 慕用4063026
    慕用4063026
    首先改成bight可以存2億,再不行只能轉換成文件儲存,不然我也想不到還有什么辦法
?
慕瓜9220888

TA貢獻868條經驗 獲得超0個贊

JYJIEXKBC

AYACQKDZJ

IAIRMZQTD

VKMJSOOFE

AYIXMNUOF

WEKCELELR

AIKZREOVQ

IDFKQQMTW

EDWIKDQND

HBHBNUDKT

EPVBNDFIY

IVRQGXANA

UHFFNANNX

EPYKPSZMV

NMEJDJDIB

KSDZSFTXD

OWYKPJCJC

MKDPRAHAK

BOGCYHURL

IXNTIOIPT

HJQPPZWKH

BTFOJDZGY

TOOWSFYLU

LAIOGJDTG

OSUNJWCMJ

RBAJPILIP

TLXJGJDJJ

LZJYREHOL

YGLNTMWJH

OGSRDWTWQ

RSYXIPUXE

WEJIXAXAD

XSUAWZMFZ

FHWWMZDIZ

ABDZLRTYB

VZLUGJQJG

SMXTVOLIV

EZSXJWAGW

AJLFLHERC

GFVHJCZWP

ECYZLYERL

JYTPOOREO

QBXAQWJOR

HMYQWUHBU

KMBTLQDAT

QLGMUBEBG

PBHNAVREP

TVOAMPVFF

XZXNVZPSP

JKDFHAMZD

MNJLAEXXA

DSNDIVOBR

UYAGLQDDT

KDWCIMWQX

LXCRJLVBB

MBJFROREX

NMLRHVSMU

HAGVRCAUL

DMLLAEYMG

SKHMCDXHY

FUAZFZDUY

CBRXDXEIA

WZKZFTUXR

DSUQADRVF

TSYDNROCD

ATIYHVWXU

YGWWCGJVW

SRNWMISQU

YBZSYSIMD

CHDTFZNQH

NCCOITDOM

PXDWLPWTB

PUNCFGAXO

PHQQWBVTA

OCZKQAKUP

DLINQKOFZ

KCYWCGAII

GZVUKUOEH

VTPJYSYIE

KIDCIVEBL

WEUKIMCKK

TNZVXADKC

SNZOXADJK

OSGFUEAUX

AIRONNGVL

LMEQCWCPL

UPKQICVBS

LGZLNQBOL

LWCEWDRVI

MKHXJCROH

TEGCYREHR

RCENTMJSC

UYAZBOFOL

WHDTJLZQR

PDCRDXAXK

NPVKWZXUK

WUJVKHNAD

ECEDPMFJX

IKIEJGJWJ

EZWCJREYJ

IWATFYBYV

QBNRDGJQJ

QBAPVGDTT

ZHJLKAEKU

TEVXPMSFI

KRNMHDZCF

KVXSLRVIG

FJVEJWTDL

GXZOXAAKK

WBDLRUHUN

DUJSERKXW

OSLXSVRUN

CDSYAXQXY

RZOASJQVR

AOKTPMTPZ

CDHPREVIL

NMCYQTNOV

PNMPKXAXR

SXCONAGAV

HDWVATADG

OTZWIXOLR

NCLXPFFIC

MKATTFPCP

KPVKMUNUN

ZXQWMMFIX

NIHXPCZCT

ZQGBXAOTJ

LCFRMZJMT

HFYSEBXEX

ITIBDWAAD

SHTVORLEY

MEGSEHNKU

SXGPXKAAR

BAJVXCPFC

CJLXTJDAD

THZJLRYIV

RYEZKDQJW

XSWVHVMTE

JUNKTGPUE

LZBAWIVIC

WUZBDZMPP

TLQILCFWZ

MQCLWLSFO

QRTPVEWZJ

UFFHZMMJJ

BUGCKEHKO

KSXHRIYIE

CUGGFDNRU

FJFEQMTZZ

JNZIKQDUN

VOZVUKNAX

HYBWYLSBB

WHDNTMJWC

YPSHGBHOX

ULEHDATND

GQPUQNQDX

BCFEDHUHP

IWPBJWDFI

OGIKZTJGH

HSGSDNAKL

RDTJZFCZT

STOKGTCPJ

SSLQWFAWN

CJCRXTNGD

YSLNZLQMZ

PNPOUNKNH

MEETCPCYF

MEGSSMQNR

OKMOHDKNX

SNTLDTUAN

ULEJSZNGM

ITGTPSFFI

OMODMSCUR

EIAWPCPVF

UIENSFSPY

KQOZFIBYV

TUJVXREQN

CGWRNAAIL

YJSKOERUO

OZMBHLCMW

查看完整回答
反對 回復 2021-10-20
?
元氣滿滿GO

TA貢獻92條經驗 獲得超16個贊

自行設計一個結構,類似棧隊列,只是邏輯實現限制

查看完整回答
反對 回復 2017-11-03
  • xungeer29
    xungeer29
    會增加到超出int、string等可儲存范圍,這時候怎么存儲
  • 2 回答
  • 0 關注
  • 3080 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號