如何将字符串推入堆栈
How to push strings into a stack?
我想将红色、蓝色和绿色等字符串推入堆栈
//This is my structure containing the stack and top pointer
typedef struct{
char stk[10];
int top;
}STACK;
//This is my push funtion
void push(STACK stak, char str[])
{
stak->top++;
strcpy(stak->stk[stak->top], str);
return;
}
我想组成一个像这样的堆栈
red
blue
green
我做得对吗?
对于基础知识,问题的答案是堆栈本身的定义。
堆栈是一种基本的数据结构,在逻辑上可以认为是由真实的物理堆栈或堆栈表示的线性结构,在这种结构中,项目的插入和删除发生在称为堆栈顶部的一端。
您正在做的是创建一个字符堆栈,并尝试将字符串推送到其中。相反,您应该创建一个字符串堆栈。
typedef struct{
string stk[10];
int top;
}STACK;
void push(top,string str)
{
top++;
//overflow condition here
strcpy(STACK.stk[top],str);
}
C和C++也有很多不同之处,所以请先决定你要使用哪种语言。这将帮助你得到更好的答案。
相关文章:
- 如何使用堆栈将字符串输入拉伸 k 次
- 带有模板的字符串堆栈?
- 在堆或堆栈上分配的动态创建的字符串 - C
- GCC C++堆栈上的字符串
- JNI、C++在堆栈中推送字符串
- 我的 c 字符串复制函数正在损坏其他变量的堆栈
- 无法创建栅格堆栈,因为我无法连接字符串(dir_name + 文件名)
- 如何在 C++03 中没有重复代码的情况下在堆栈上创建一个非常量 C 字符串数组?
- 为什么字符串不会在堆栈中推送或弹出
- 我如何转换一个基于动态的,基于指针的int堆栈,以便将其打印成字符串
- 我在 36603 以上输入的任何数组大小时都会返回"堆栈溢出"错误。如何使字符串能够捕获整个.txt文件?
- 使用堆栈将字符串格式的十进制转换为双精度
- 查看使用堆栈是否相等的两个字符串
- C#到C代码P/调用多个std:字符串声明导致堆栈损坏
- palindrome功能(字符串,堆栈,队列)
- 堆栈上的 Const C 字符串
- 使用堆栈测试字符串中的x和y是否相等
- 将字符串放入堆栈C++时出错
- 如何将字符串推入堆栈
- C++ 堆栈字符串流函数返回整数与 ASCII