C++ Getline()在for循环中不断跳过行

C++ Getline()在for循环中不断跳过行,c++,pointers,C++,Pointers,我试着打印变量的值,其中一个是指针,第二个只是一个int 我确实给指针分配了一个值-a,然后我把指针分配给了变量。我试图输出变量的值,这意味着要显示指针的值,但我什么也没有得到 由于编译器显示以下警告: “a”在该函数中被统一使用 最终在编译过程完成后,我在运行程序时收到错误,windows弹出窗口告诉我: 0x00401359处的指令引用了0x00417c7e处的内存。内存无法写入。单击“确定”终止程序 这段代码有什么问题 #include <iostream> using n

我试着打印变量的值,其中一个是指针,第二个只是一个int

我确实给指针分配了一个值-a,然后我把指针分配给了变量。我试图输出变量的值,这意味着要显示指针的值,但我什么也没有得到

由于编译器显示以下警告:

“a”在该函数中被统一使用

最终在编译过程完成后,我在运行程序时收到错误,windows弹出窗口告诉我:

0x00401359处的指令引用了0x00417c7e处的内存。内存无法写入。单击“确定”终止程序

这段代码有什么问题

#include <iostream> 

using namespace std; 

int main(void) 
{
   int *a; 
   int b; 
   *a = 5;
   b = *a; 

   cout << b << " " << *a; 

}
a是指针,它应该指向某个地方。如果不初始化它,它会指向任何地方,因此赋值*a=5会尝试写入随机内存地址

#include <iostream> 

using namespace std; 

int main(void) 
{
   int c;       // reserves some space for a to point to
   int *a = &c; // NOW a is initialized and it points to c 
   int b; 
   *a = 5;      // writes 5 into the variable c
   b = *a; 

   cout << b << " " << *a; 

}

指针a没有可以保存此值的变量地址。

标题与此问题无关。您对编译器的警告有何看法:“a”在该函数中被单位化了?您需要首先为指针分配内存……对getline的调用具体在哪里?
#include <iostream>

using namespace std;

int main(void)
{
   int *a;
   int b;
   a=&b;
   *a = 5;

   cout << b << " " << *a;

}