Вставить строку в стек? - PullRequest
       16

Вставить строку в стек?

2 голосов
/ 08 октября 2010

Я использую C ++ и хочу помещать строки в стек, как push int в стеке.

Например

3."stackoverflow"
2."is"
1."Best"
0."site"

при каждом индексе стека я хочу нажать строку. Как я могу это сделать?

Ответы [ 3 ]

13 голосов
/ 08 октября 2010

Использование STL, например:

#include <stack>

std::stack<std::string> s;
s.push("A");
s.push("B");
s.push("C");
s.push("D");

Для получения дополнительной информации проверьте ссылку STL .

7 голосов
/ 08 октября 2010

Полностью согласен с Тон ван ден Хеувелем, однако вы сказали

"в каждом индексе стека, я хочу нажать строку"

Что вы имеете в виду "на каждый индекс "?Вы должны знать, что как только строки находятся в стеке, вы можете получить доступ только к верхней строке, и в стеке нет доступа по индексу.Если это то, что вам нужно, используйте вместо этого std :: vector.

1 голос
/ 18 июня 2017

Я сделал это. Ранее я видел, как преобразовать строку в массив символов и смешал ее с тем, что я сейчас изучаю, т.е. стеки.

stack <int> Name;
name="mohit";
for(char c:name)
 Name.push(c);
for(char c:name){
cout<<Name.top();
 Name.pop();}

А на выходе было Тихом Это функция проста. Он преобразует строку в массив символов, а затем толкает строку символ за символом. Чтобы выскочить, мы используем тот же цикл, и он выдает, используя принцип LIFO.

...