社区应用 最新帖子 精华区 社区服务 会员列表 统计排行 道具中心
主题 : VS2010这算是什么怪异的现象??
secondsen 离线
级别: 总版主
显示用户信息 
0  发表于: 2012-10-25   
来源于 通用编程 分类

VS2010这算是什么怪异的现象??

首先代码没毛病。。。

int WinMain(__in HINSTANCE hInstance, __in_opt HINSTANCE hPrevInstance, __in LPSTR lpCmdLine, __in int nShowCmd)
{
    fstream file;
    string str;
    file.open("test.txt");
    strstream buffer;
    int offsetg = file.tellg();
    int offsetp = file.tellp();
    int filelen;
    if (offsetg == -1)
    {
        FILE* fp = fopen("test.txt", "w");
        fclose(fp);
        file.open("test.txt");
    }
    AllocConsole();
    SetConsoleTitleA("Debug Window");
    freopen("CONOUT$","w+t",stdout);
    freopen("CONIN$","r+t",stdin);

    buffer << "buffer!!!\ndddd";
    cout << buffer.str() << endl << "---------" << endl;Sleep(1000);
    buffer >> str;
    cout << str << endl << "---------" << endl;Sleep(1000);
    cout << buffer.str() << endl << "---------" << endl;Sleep(1000);
    buffer >> str;
    cout << str << endl << "---------" << endl;Sleep(1000);
    file << str << endl;file.flush();

    for (int i = 0; i < 1000000; i++)
    {
    cout<<"123455566778\n";
    Sleep(100000);
    }

    file.close();
    FreeConsole();
    return 0;
}
评价一下你浏览此帖子的感受

精彩

感动

搞笑

开心

愤怒

无聊

灌水
我就是你们的神,庶民们,追随我吧!跟着我一起拖后腿!
拖后腿的人发勋章!
secondsen 离线
级别: 总版主
显示用户信息 
1  发表于: 2012-10-25   
问题开始。。。
一开始好好的,没问题,后来自己改了改,出问题了,我就把代码改回来了。。然后调试 蹦出个0xC0000095,我就郁闷了,明明都改回原来的样子了。。。

开始做实验

/*
    buffer << "buffer!!!\ndddd";
    cout << buffer.str() << endl << "---------" << endl;Sleep(1000);
    buffer >> str;
    cout << str << endl << "---------" << endl;Sleep(1000);
    cout << buffer.str() << endl << "---------" << endl;Sleep(1000);
    buffer >> str;
    cout << str << endl << "---------" << endl;Sleep(1000);
    file << str << endl;file.flush();
*/

看到了吧,这段代码加注释,运行没问题。。。然后一行一行的从注释里面拿出来,调试。。。都没毛病。。。

最后


    buffer << "buffer!!!\ndddd";
    cout << buffer.str() << endl << "---------" << endl;Sleep(1000);
    buffer >> str;
    cout << str << endl << "---------" << endl;Sleep(1000);
    cout << buffer.str() << endl << "---------" << endl;Sleep(1000);
    buffer >> str;
    cout << str << endl << "---------" << endl;Sleep(1000);
    file << str << endl;file.flush();

×/

都改成这样了  调试,我擦,有没毛病了。。。这个过程中,我绝对没有更改代码,除了一行一行的从注释里面拿出来,每拿一行调试一次。

结果,这代码还是原来的代码 没问题。。。

这VS2010是不是哪抽风了?
我就是你们的神,庶民们,追随我吧!跟着我一起拖后腿!
拖后腿的人发勋章!
lw 离线
级别: 分版主
显示用户信息 
2  发表于: 2012-11-04   
是不是应该重新编译一下呢?
Style-C
secondsen 离线
级别: 总版主
显示用户信息 
3  发表于: 2012-11-04   
谁知道呢,这么长时间了。。。OTZ
我就是你们的神,庶民们,追随我吧!跟着我一起拖后腿!
拖后腿的人发勋章!
描述
快速回复

认证码:

验证问题:
12-5=?,答案:7 正确答案:7
按"Ctrl+Enter"直接提交