通过C++中的文件传递值

Sec*_*ate 3 c++ visual-studio-2008

我仍然对C++很陌生,而且我一直在努力使我的程序看起来不像是混乱的群集.

我终于摆脱了各种错误消息,但是现在应用程序崩溃了,我不知道从哪里开始.调试器只是抛出一个随机的十六进制位置.

先感谢您.

#include <iostream>

using namespace std;

struct Value{
public:
    int Val;
}*pc;

#include "header.h"

int main () {
    cout << "Enter a value: ";
    cin >> pc->Val;
    cout << "\nYour value is " << pc->Val << ". ";
    system ("pause");
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

Sev*_*yev 7

在你的程序中,pc不是结构 - 它是指向结构的指针(因为*).你没有把它初始化为任何东西 - 它指向一些虚假的位置.所以,要么在main()的第一行初始化它:

pc = new Value();
Run Code Online (Sandbox Code Playgroud)

或者通过删除*使其成为非指针,并使用.而不是 - >整个程序中的成员访问权限.