C ++ Primer ex 7.5 [英] C++ Primer ex 7.5
问题描述
/ * C ++ Primer - 4 / e
*
*练习7.5
*语句:
*写一个函数,它带一个int和一个指向int的指针,
返回更大的值。你应该用什么类型的
指针?
* /
#include< iostream>
#包括< cassert>
/ *我们将使用指向const的指针,因为我们感兴趣的是
只读取值* /
int return_bigger(int i,const int * ip){
if(i * ip)
{
返回1;
}
否则if(i< * ip)
{
返回-1;
}
其他
{
返回0; / *如果两个价值相等。他将返回零* /
}
}
int main()
{
std :: cout<< 输入initeger:;
int i;
std :: cin> i;
std: :cout<< 输入initeger:;
int j;
std :: cin> j;
const int * pj =& j;
std :: cout<< 是
<<我
<< "大于
<< j
<< ":\t"
<< (return_bigger(i,pj))
<< std :: endl;
返回0;
}
====== OUTPUT == =======
[arnuld @ arch cpp] $ g ++ -ansi -pedantic -Wall -Wextra ex_07-05.cpp
[arnuld @ arch cpp] $ ./a.out
输入一个initeger:3
输入一个initeger:2
大于2:1
[arnuld @ arch cpp] $ ./a.out
输入一个initeger:-9
输入一个initeger:-10
是-9大于-10:1
[arnuld @ arch cpp] $ ./a.out
输入一个initeger:3
输入一个initeger:3
比3大3:
[arnuld @ arch cpp] $
-
http://arnuld.blogspot.com
g ++ -ansi -pedantic -Wall -Wextra ex_07-05.cpp
[arnuld @ arch cpp]
./ a.out
输入一个initeger:3
输入一个initeger:2
是3大于2:1
[arnuld @ arch cpp]
./ a.out
输入一个initeger:-9
输入一个initeger:-10
是-9大于-10:1
[arnuld @ arch cpp]
as usual , advices for improvement:
/* C++ Primer - 4/e
*
* exercise 7.5
* STATEMENT:
* write a funtion that take an int and a pointer to an int and
return the larger of the values. What type should you use for the
pointer ?
*/
#include <iostream>
#include <cassert>
/* we will use pointer to a const because we are interested in
only reading the values */
int return_bigger( int i, const int* ip) {
if( i *ip )
{
return 1;
}
else if( i < *ip )
{
return -1;
}
else
{
return 0; /* if both vales are equal.t his will return Zero */
}
}
int main()
{
std::cout << "enter an initeger: ";
int i;
std::cin >i;
std::cout << "enter an initeger: ";
int j;
std::cin >j;
const int* pj = &j;
std::cout << "is "
<< i
<< " bigger than "
<< j
<< ":\t"
<< (return_bigger( i, pj ))
<< std::endl;
return 0;
}
====== OUTPUT =========
[arnuld@arch cpp] $ g++ -ansi -pedantic -Wall -Wextra ex_07-05.cpp
[arnuld@arch cpp] $ ./a.out
enter an initeger: 3
enter an initeger: 2
is 3 bigger than 2: 1
[arnuld@arch cpp] $ ./a.out
enter an initeger: -9
enter an initeger: -10
is -9 bigger than -10: 1
[arnuld@arch cpp] $ ./a.out
enter an initeger: 3
enter an initeger: 3
is 3 bigger than 3: 0
[arnuld@arch cpp] $
--
http://arnuld.blogspot.com
g++ -ansi -pedantic -Wall -Wextra ex_07-05.cpp
[arnuld@arch cpp]
./a.out
enter an initeger: 3
enter an initeger: 2
is 3 bigger than 2: 1
[arnuld@arch cpp]
./a.out
enter an initeger: -9
enter an initeger: -10
is -9 bigger than -10: 1
[arnuld@arch cpp]
这篇关于C ++ Primer ex 7.5的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!