C++ Primer(第五版) 第二章练习答案
2.1
2.2
2.3or2.4
#include <iostream>
#include <limits.h>
int main()
{
unsigned u = 10, u2 = 42;
std::cout << u2 - u << std::endl;
std::cout << u - u2 << std::endl;
std::cout << UINT_MAX - 32 + 1 << std::endl;
int i = 10, i2 = 42;
std::cout << i2 - i << std::endl;
std::cout << i - i2 << std::endl;
std::cout << i - u << std::endl;
std::cout << u - i << std::endl;
return 0;
}
2.5
#include <iostream>
int main()
{
char a = 'a';
wchar_t b = L'a';
const char str[] = "a";
const wchar_t str2[] = L"a";
int i1 = 10;
unsigned i2 = 10u;
long i3 = 10L;
unsigned long i3 = 10UL;
int i4 = 012;
int i5 = 0xC;
double d1 = 3.14;
float d2 = 3.14F;
long double d3 = 3.14L;
int f1 = 10;
unsigned int f2 = 10u;
double f3 = 10.;
double f4 = 10e-2;
return 0;
}
2.6
#include <iostream>
int main()
{
int month = 9, day = 7;
int day = 07;
return 0;
}
2.7
#include <iostream>
int main()
{
std::cout << "Who goes with F\145rgus?\012";
auto i1 = 3.14e1L;
auto i3 = 3.14L;
return 0;
}
2.8
#include <iostream>
int main()
{
std::cout << "2\tM\n";
return 0;
}
2.9
#include <iostream>
int main()
{
int input_value = 0;
std::cin >> input_value;
double i = {
3.14};
double salary = 9999.99, wage = salary;
double i = 3.14;
return 0;
}
2.10
#include <iostream>
#include <string>
std::string global_str;
int global_int;
int main()
{
int local_int;
std::string local_str;
std::cout << global_str << std::endl;
std::cout << global_int << std::endl;
std::cout << local_int << std::endl;
std::cout << local_str << std::endl;
return 0;
}
2.11
#include <iostream>
extern int ix = 1024;
int iy;
extern int iz;
int main()
{
return 0;
}
2.12
2.13
#include <iostream>
int i = 42;
int main()
{
int i = 100;
int j = i;
printf("%d\n", j);
return 0;
}
2.14
#include <iostream>
int main()
{
int i = 100, sum = 0;
for (int i = 0; i != 10; ++i)
sum