试图对控制台功能有一些基本的了解。我有问题,那么请考虑以下...更好地理解getline()和cin
#include "stdafx.h"
#include<iostream>
#include<conio.h>
using namespace std;
/*
This is a template Project
*/
void MultiplicationTable(int x);
int main()
{
int value = 0;
printf("Please enter any number \n\n");
getline(cin, value);
MultiplicationTable(value);
getchar();
return 0;
}
我实际上是从http://www.cplusplus.com/doc/tutorial/basic_io/基于这一关代码。当我编译应用程序时,我的IDE并不认可getline()。我得到一个错误
'getline': identifier not found
现在来看看这个代码
#include "stdafx.h"
#include<iostream>
#include<conio.h>
using namespace std;
/*
This is a template Project
*/
void MultiplicationTable(int x);
int main()
{
int value = 0;
printf("Please enter any number \n\n");
cin>>value;
MultiplicationTable(value);
getchar();
return 0;
}
当我执行这行代码的控制台窗口打开并立即关闭。我想我对cin缺少一些东西。我知道它划定了空格,但我不知道还有什么。我应该如何使用输入来使我的生活更轻松。
嗯,我认为第一个代码不起作用的原因是因为getline期望(char * s,streamsize n),而cin是一个istream对象,所以这就是编译器抱怨的原因。 我不知道为什么窗口不保持打开第二个代码。 – 2010-05-26 16:56:40
在void MultiplicationTable(int x)的末尾添加括号,如下所示void MultiplicationTable(int x){}; – Secko 2010-05-26 17:11:10