好记性不如烂笔头

个人博客http://huqijun.org,发现更大的世界~

C++ 几种刷新输出缓冲区方式

一下几种情况会导致缓冲区内容被刷新,即写入到真实的输出设备或者文件: 1. 程序正常接收, 作为main 返回工作的一部分,将情况所有输出缓冲区; 2. 一些不确定的时候,缓冲区可能已满; 3. 使用manipulator 显示属性缓冲区, 比较常用的是endl, flush, ends:  co...

2015-09-30 00:14:33

阅读数 2799

评论数 1

C++中直接把cin 输出的结果是什么

如题,如下代码: ===================================================== #include using namespace std; int main() {  cout } ===========================...

2015-09-29 23:21:33

阅读数 206

评论数 0

C++:函数指针与函数引用

C++中主要有两类名字, 变量名和函数名(还有类名和结构体名等等)。 名字或者标识符要能唯一代表某一段内存区域。 变量可以通过变量名,指针,引用几种方式直接或者间接的访问,类型的函数也可以通过函数名,函数指针,函数引用几种方式访问。 1.通过函数名访问 void fuck(i...

2015-09-27 23:41:03

阅读数 221

评论数 0

C++ 之内联(inline)函数

返回两个string 中 较短的一个: const string &  shorterString(const string & s1, const string & s2) {   return s1.size() } 为这样小操作定义函数的好处是:...

2015-09-27 21:25:56

阅读数 125

评论数 0

C++之全局对象,局部对象,静态局部对象

先说两个概念:作用域(scope) 和生命周期(lifetime) 作用域: 名字的作用域指的是知道该名字的程序文本区域 生命周期:对象的生命周期指在程序执行过程中对象存在的时间 全局对象, 顾名思义是全局的对象,其作用域是整个程序文本,其对象的声明周期是整个程序的执行过程; 局部对象: 一般...

2015-09-27 20:05:25

阅读数 790

评论数 0

C++函数的声明,实现和默认实参

函数和变量都应该先声明再使用,在C++中。 声明和定义可以分开, 一般声明都在.h 文件中, 实现都放在.cpp 文件中。 函数声明中的形参名会被忽略, 及即函数声明时可以不写形参名 eg. void print(int * , int); 默认实参是在形参列表中指...

2015-09-27 19:29:07

阅读数 181

评论数 0

main函数的参数:处理命令行选项

函数都有参数, main函数也不例外。 一般我们使用的main 函数只有空的形参数表: int main() { return 0; } 实际上main函数也是可以处理传进来的参数, 通过命令行选项的方式可以将参数传给main 函数 此时main 函数是如下定义的: int main(...

2015-09-27 10:49:25

阅读数 246

评论数 0

C++之安全使用数组的4中方法

数组有两个特质: 1. 不能复制(有些编译器将数组复制作为编译器扩展) 2. 使用数组名时,自动将其转为为指向数组第一个元素的指针(隐式类型转换) 上面两个特征决定了处理数组的函数通常通过指向数组元素的指针来处理数组内容 一下几个数组形参定义是等价的: 1.  void fuck(int ...

2015-09-27 00:41:35

阅读数 131

评论数 0

C++: 函数返回非引用类型与返回引用类型

函数的返回过程和参数传递过程是相对称的两个的过程。 参数传递从调用函数向被调用函数传递, 返回值从被调用函数向调用函数返回。 有与传递方式的区别(拷贝副本与传递本身), 函数形参可以分为引用形参和非引用形参; 类似的,函数返回值也可以分为非引用类型返回值和引用类型返回值, 二者的差异和引用形参...

2015-09-26 23:52:29

阅读数 157

评论数 0

C++ 引用形参和指针形参

从引用形参和非引用形参的区别来看,似乎任何时候使用引用形参都指针好, 既少了实参到形参拷贝的开消,也同样可以操作(非const )实参。 那指针形参有没有什么优点呢? 1. 指针形参比引用形参更能清晰的向函数调用者表明函数可能会修改实参数 void f1(int * ...

2015-09-26 12:48:18

阅读数 308

评论数 0

C++函数引用形参和非引用形参

C++中函数的形参主要有两种类型: 非引用形参和引用形参, 对应两种不同的参数传递方式。 void f(int t); void f(int &t); 非引用行参是实参的一个副本, 故对非引用形参的修改不会影响实参; 引用形参是实参的别名,故对引用形参的修改其实就是修改实参; 两者的主...

2015-09-18 23:26:12

阅读数 422

评论数 0

C++ 之初探异常处理(exception)

// dail_test.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include #include #include #include #include #include using name...

2015-09-16 22:52:37

阅读数 140

评论数 0

C++ 基础调试手段

int main() {     string str1, str2;     while(cin>>str1>>str2)     {         assert(str1 =="hello");         ;  ...

2015-09-11 00:09:35

阅读数 136

评论数 0

C++ 中while 比较少见的一种形式

#include using namespace std; int main() {     string str1, str2;     while(cin>>str1>>str2)     {         ;         #ifndef ...

2015-09-10 23:56:19

阅读数 220

评论数 0

C++ 中switch 使用注意事项

C++ switch 注意事项: 1.  switch 的目的是更方便的是实现深层嵌套的if /else 逻辑; 2.   switch 执行顺序是从唯一匹配的标号开始依次执行各语句,直到switch 结束或break 语句为止。  一般使用switch 时, case 中不要遗漏break ...

2015-09-10 00:16:41

阅读数 533

评论数 0

C++ switch 奇特用法

int vowelCnt = 0  // ..... switch(ch) { case 'a': case 'e': case 'i': case 'o': case 'u': ++vowelCnt; break; } 上述例子等价于: switch(c...

2015-09-09 23:01:22

阅读数 293

评论数 0

C++ 奇葩的空语句

#include using namespace std; int main() {     ;;;;;;;;     ;;;     ;;     ;     return 0; } ================================...

2015-09-08 23:30:49

阅读数 507

评论数 0

C++中规定了求值顺序的操作符

C++ 中规定了求值顺序的操作符有以下4个: 1. &&  :左操作数不能确定表达式的值,才需要计算右操作数 2. || : 左操作数不能确定表达式的值,才需要计算右操作数 3.  ?:    ( cond ? expr1:expr2)  cond 为真时, 计算expr1 ...

2015-09-04 21:43:47

阅读数 173

评论数 0

C++ 内置类型在 i5 ,x64 机器上占用的长度

int main() {     cout     cout     cout     cout     cout     cout     cout     cout     cout     return 0; }

2015-09-04 20:31:53

阅读数 254

评论数 0

C++ 唯一三元操作符: 条件操作符?

条件操作符格式为: cond ? expr1: expr2; 先计算cond 值, 若cond 为真,则 计算expr1 ,若cond 为假,则计算expr2 作用: 将简单的if-else 嵌入表达式中 最常用的例子: 返回两个数中较大的: int max = i&g...

2015-09-04 20:02:05

阅读数 347

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭