2013-02-21 70 views
0

我試圖想辦法保持命令的歷史大小的數組[10],並同時保持其尺寸不變,始終顯示最後10個命令。是否有一個不涉及隊列或列表的實現?也許是這樣,給陣列更多的空間,並填寫命令,但打印不同的索引?我在Windows機器上使用C.保持相同的陣列尺寸,同時增加值

回答

2

只是把你的陣列就像一個環形緩衝區,並保持一個cur變量指向在最近的條目。

  • 要添加一個條目:

    cur = (cur + 1) % size; 
    
  • 到陣列中的打印一切:

    printf("%d\n", cur); 
    for (i = (cur + 1) % size; i != cur; i = (i + 1) % size) 
        printf("%d\n", i); 
    
+0

我應該發佈我的代碼,如果它是可能的嗎? – serge 2013-02-21 13:54:04

+0

@ voth1234你爲什麼要發佈您的代碼?有什麼你不明白的嗎? – cnicutar 2013-02-21 13:54:53

+0

是的,基本上。價值觀的轉變如何發生? – serge 2013-02-21 14:02:28

相關問題