2017-01-10 86 views
-23

据我所知,返回类型:为炭返回类型/ INT

int function() 

需要我返回一个整数int如:

return 0; 

但从一个例子,我所看到的,函数返回一个整型并返回一个字符:

return a; 

如下:

int inputValue() 
{ 
    std::cout << "input value please."; 
    int a; 
    std::cin >> a; 
    return a; 
} 

这是因为返回变量被初始化为一个整数?

+12

你显示的代码中有一个'char'。举个例子,我不知道你在说什么。为什么又一次令人惊讶的是,返回类型为“int”的函数可以返回类型为“int”的值? –

+0

'a'是一个'int'。该函数返回一个'int'。如果您将其名称更改为'aaaaa',您是否仍然认为'a'是'char'? – Galik

+3

@python_starter是什么让你觉得一个角色被退回?看来你应该阅读一个C++教程或书籍。 – Biffen

回答

5

这是因为返回变量被初始化为一个整数?

是的。这是因为返回的变量是数据类型为整数的变量。


int function() 

返回类型不要求你返回一个确切的整数。这只是表示只要它是int或精确整数(例如return 0)就必须返回任何变量。

下面

int inputValue() 
{ 
    std::cout << "input value please."; 
    int a; 
    std::cin >> a; 
    return a; 
} 

作品的代码,因为a是整型变量(一个int)。由于我们的退货类型为int,因此我们可以返回a。但是,它将返回a的值,而不是字符“a”本身。

确实会注意到,a初始化而是宣布,由克雷格·杨指出。

+1

也许一个小的我建议在你的回答中指出'a'完全不是_initialised_,但它被声明为一个整数。 –