会打代码的扫地王大爷 2017-03-06 12:31 采纳率: 33.3%
浏览 1080

C++ STL 中栈的问题,求指教

某项目中使用了stl的栈,可是调试一直有问题,结果精简到这里,请问它的运行结果为什么那么奇怪,我发现那个char*换成char,以及op[100]换成op就正常了,这是为什么呢

输入
1 2
输出
2 2
是哪里出问题了吗?

#include<iostream>
#include<stack>
using namespace std;

int main()
{
    char op[100];
    stack<char*>   a;

  for (int i=0;i<2;i++)
    { 
        cin>>op;
        a.push(op);
    }


    while(!a.empty())
    {
        cout<<a.top()<<endl;
        a.pop();
    }

   return 0;
}

  • 写回答

3条回答

  • threenewbee 2017-03-06 15:33
    关注
     char op[100];
    ->
    char * op;
    
    op = new char[100]; //加上这个
    cin>>op;
    a.push(op);
    
    评论

报告相同问题?

悬赏问题

  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥15 stable diffusion
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘