溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

C++棧的使用方法

發(fā)布時(shí)間:2021-07-20 04:33:11 來源:億速云 閱讀:206 作者:chen 欄目:編程語言

本篇內(nèi)容介紹了“C++棧的使用方法”的有關(guān)知識(shí),在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

想要充分的掌握C++棧技術(shù),那么就要對(duì)C++中的結(jié)構(gòu)、語句、變量、函數(shù)、預(yù)處理指令、輸入和輸出等內(nèi)容進(jìn)行了解掌握,下文除了學(xué)習(xí)C++棧的基本性質(zhì)外還對(duì)C++棧的新特性進(jìn)行全面研究。

應(yīng)該怎么做?只要把書放在頂端就可以了。如果你想從這堆書中取出第3本呢?你只要一本接著一本把書移到頂端,直到第3本書處在頂端。然后取走第3本書,并使其他處在頂端。

你已經(jīng)注意到我使用頂端這個(gè)詞語。沒錯(cuò),頂端(頂)對(duì)于堆至關(guān)重要的。堆只允許從頂端加入數(shù)據(jù),出/退也是從頂。就是這么簡(jiǎn)單。那什么情況使用堆?堆被用在每一個(gè)進(jìn)程中。每一個(gè)進(jìn)程都一個(gè)堆C++棧,數(shù)據(jù)和地址從堆中被取出來/添加進(jìn)來。頂規(guī)則在這里也符合。

ESP Register 添加一個(gè)指針,指向C++棧頂。無論如何,解釋進(jìn)程中的堆怎么工作,已超出本教程范圍,讓我們開始寫數(shù)據(jù)結(jié)構(gòu)。在開始之前,請(qǐng)大家記住一些堆術(shù)語。向堆插入新元素成為入,從堆中刪除元素成為出

#include    using namespace std;   #define MAX 10 // MAXIMUM STACK CONTENT   class stack   {   private:   int arr[MAX]; // Contains all the Data   int top; //Contains location of Topmost Data pushed onto Stack   public:   stack() //Constructor   {   top=-1; //Sets the Top Location to -1 indicating an empty stack   }   void push(int a) // Push ie. Add Value Function   {   top++; // increment to by 1   if(top    {   arr[top]=a; //If Stack is Vacant store Value in Array   }   else   {   cout<<"STACK FULL!!"<    top--;   }   }   int pop() // Delete Item. Returns the deleted item   {   if(top==-1)   {   cout<<"STACK IS EMPTY!!!"<    return NULL;   }   else   {   int data=arr[top]; //Set Topmost Value in data   arr[top]=NULL; //Set Original Location to NULL   top--; // Decrement top by 1   return data; // Return deleted item   }   }   };   int main()   {   stack a;   a.push(3);   cout<<"3 is Pushed\n";   a.push(10);   cout<<"10 is Pushed\n";   a.push(1);   cout<<"1 is Pushed\n\n";   cout<    cout<    cout<    return 0;   }

我們可以很清楚的看到***入C++棧的數(shù)據(jù)***個(gè)出。這就是為什么堆被成為L(zhǎng)IFO(后進(jìn)先出,Last In First Out)。我猜你也明白為什么了。讓我們看看如何編譯、執(zhí)行此程序的。我們首先創(chuàng)建一個(gè)叫top的變量,使它處在C++棧頂位置。賦值-1,表示堆是空的。當(dāng)有數(shù)據(jù)輸入,top自動(dòng)加1,并把數(shù)據(jù)存入arr數(shù)組中。對(duì)于這個(gè)數(shù)據(jù)結(jié)構(gòu)有一個(gè)缺點(diǎn)。我們最多只能放10個(gè)元素。

“C++棧的使用方法”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

c++
AI