会打代码的扫地王大爷 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);
    
    评论

报告相同问题?

悬赏问题

  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料