比特每日一题11月6日题
1、字符串输出( s前面的数字作用)
printf("%s,%5.3s hehe\n", "computer", "computer");
printf("%s,%-5.3s hehe\n", "computer", "computer");
printf("%s,%.3s hehe\n", "computer", "computer");
输出:
computer, com hehe
computer,com hehe
computer,com hehe
%-5.3s :小数点前数字表示对齐数,±表示左右对齐,小数点后数字表示打印几位(此表示靠右对齐5位数,打印3位数)
2、不同类型的进行运算
int a = 10; double b = 3.14; 表达式’A’ + a + b值得类型是double。
(类型大的与小的运算,强制将类型小的转换成类型大的运算,double>int>char)
3、inline定义内联函数
inline是C++关键字,在函数声明或定义中,函数返回类型前加上关键字inline,即可以把函数指定为内联函数。这样可以解决一些频繁调用的函数大量消耗栈空间(栈内存)的问题。关键字inline必须与函数定义放在一起才能使函数成为内联函数,仅仅将inline放在函数声明前面不起任何作用。(不是声明)
(1)内联函数的作用
●对于内联函数,C++有可能直接用函数体代码来替代对函数的调用,这一过程称为函数体的内联展开。
●对于只有几条语句的小函数来说,与函数的调用、返回有关的准备和收尾工作的代码往往比函数体本身的代码要大得多。因此,对于这类简单的、使用频繁的小函数,将之说明为内联函数可提高运行效率。
(2)慎用内联函数
内联是以代码膨胀复制为代价,仅仅省去了函数调用的开销,从而提高函数的执行效率。如果执行函数体内代码的时间,相比于函数调用的开销较大,那么效率的收获会很少。另一方面,每一处内联函数的调用都要复制代码, 将使程序的总代码