标准数字输入

时间:2010-11-23 17:07:09

标签: c++ c

喜    我知道如何使用标准数字输入让用户在c或c ++的输入字段中输入数字?任何人用if else或switch或三元运算符告诉我任何字符串或方式。

2 个答案:

答案 0 :(得分:1)

对于C ++:

#include <iostream>

int myValue;
cin >> myValue;

if (!cin)
{
  // bad or missing input
}
else
{
  // party on with the int
}

也适用于其他内置数字类型。如果您想将输入用作string

#include <sstream>

ostringstream intStream;
intStream << myValue;
string intString(intStream.str());

如果您想在C中执行此操作,则可以使用scanf。网上有很多例子,比如这个。在捕获如下所示的数组中的输入数据时,很容易引入可怕的缓冲区溢出错误。如果您有选择,我会使用C ++。

#include <stdio.h>

int main ()
{
  char str [80];
  int i;

  printf ("Enter your family name: ");
  scanf ("%s",str);  
  printf ("Enter your age: ");
  scanf ("%d",&i);
  printf ("Mr. %s , %d years old.\n",str,i);
  printf ("Enter a hexadecimal number: ");
  scanf ("%x",&i);
  printf ("You have entered %#x (%d).\n",i,i);

  return 0;
}

不同输入格式说明符here上的文档。

答案 1 :(得分:0)

 #include <iostream>

 int main()
 {
   std::cout << "Enter a number: ";
   int i = 0;
   while (std::cin >> i) {
            // process
 }

当你点击文件结尾或输入错误的整数时,这会导致while循环退出。