随笔分类 - C/C++
摘要:typdef是在计算机编程语言中用来为复杂的声明定义简单的别名用的 typedef与#define有些相似,但更多的是不同,特别是在一些复杂的用法上,就完全不同了,在网上找了很多资料,结合自己遇到的各种问题,总结下:用途一:创建平台无关的数据类型, 使用typedef为现有类型创建同义字,定...
阅读全文
摘要:typedef 与 #define的区别整理于一篇经典blog,经典原文地址http://www.cnblogs.com/csyisong/archive/2009/01/09/1372363.html案例一:通常讲,typedef要比#define要好,特别是在有指针的场合。请看例子:typede...
阅读全文
摘要:细说 struct和typedef struct 参考原文:http://www.cnblogs.com/qyaizs/articles/2039101.html,有些小改动~1 首先://注意在C和C++里不同 在C中定义一个结构体类型,并且声明一个结构体变量,下面几种方法是等价的 ...
阅读全文
摘要:C++中有两个getline函数, cin.getline()与getline() 这两个函数相似,但是 这两个函数分别定义在不同的头文件中。 cin.getline()属于istream流,而getline()属于string流,是不一样的两个函数 1.getline()是定义在中的一...
阅读全文
摘要:参考原文:http://www.cnblogs.com/flatfoosie/archive/2010/12/22/1914055.html,另外做了一些修改~1、cin 2、cin.get() 3、cin.getline() 4、getline() 附:cin.ignore();c...
阅读全文
摘要:AssertAssert是断言的意思,头文件为assert.h,assert是一个宏功 能: 测试一个条件并可能使程序终止用 法: void assert(int test);在单元测试中经常使用断言断言只有在Debug模式下才有效,它可以有两种形式1.assert Expression12.ass...
阅读全文
摘要:原文地址:http://www.cnblogs.com/yc_sunniwell/archive/2010/07/14/1777433.html作用域规则告诉我们一个变量的有效范围,它在哪儿创建,在哪儿销毁(也就是说超出了作用域)。变量的有效作用域从它的定义点开始,到和定义变量之前最邻近的开括号配对...
阅读全文
摘要:在用c++的getline函数的时候碰到两个问题,总结如下: 1.有时候写程序的时候我们会发现getline(cin,str);这样的语句是不会执行,而是直接跳过的, 一般的解决方法是getline一句之前加cin.ignore()或者一句cin.get();,或者重复geiline解释:认真...
阅读全文
摘要:今天写c程序时遇到这样的编译问题char str [10]; str [] ="welcome";报语法错误char str [10]; str="welcome";也报语法错误这是为什么呢?如果是其它的变量,比如:int a=1; 可以分写成两个表达式: int a; ...
阅读全文
摘要:参考原文地址:http://blog.chinaunix.net/uid-26404201-id-3212247.html定义一个数组char a[10];怎么给这个数组赋值呢?1、定义的时候直接用字符串赋值char a[10]="hello";注意:不能先定义再给它赋值,如char a[10]; ...
阅读全文
摘要:原文地址:http://www.cnblogs.com/xFreedom/archive/2011/05/16/2048037.html相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC中的CString类使用起来真的非常的方便好用。但是如果离开了MFC框架,还有没有...
阅读全文
摘要:原文地址:http://www.cppblog.com/kang/archive/2009/04/05/78984.html在原文基础上进行了一些小修改~memmove、memcpy和memccpy三个函数都是内存的拷贝,从一个缓冲区拷贝到另一个缓冲区。 memmove(void *dest,voi...
阅读全文
摘要:很多数据机构,比如栈,链表等,都可以动态分配存储空间那么数组呢?一般声明时都要指定数组长度,那么数组可以实现动态分配么?假设数组存的是int型 那么 你先申请10个元素 int* a = (int*)malloc(sizeof(int)*10); 如果又来了个元素,那么你就可以 a...
阅读全文
摘要:1.概念和作用fwrite是C语言函数,指向文件写入一个数据块,写入的是fprintf是C/C++中的一个格式化写-库函数,其作用是格式输出到一个流/文件中;原型是int fprintf( FILE *stream, const char *format, [ argument ]...),fpri...
阅读全文
摘要:上学时我们很多学了很多种排序算法,不过在c++stl中也封装了sort等函数,头文件是#include 函数名功能描述sort对给定区间所有元素进行排序stable_sort对给定区间所有元素进行稳定排序partial_sort对给定区间所有元素部分排序partial_sort_copy对给定区间复...
阅读全文
摘要:原文地址:http://blog.csdn.net/shijizhisheng/article/details/19080541 #ifdef _DEBUG virtual void AssertValid() const; //assert(断言)valid(有效的,正确的) virt...
阅读全文
摘要:该函数返回目标字符串(key)在源字符串中最后一次匹配的位置 如果没有找到匹配的位置则返回string::npos,是一个无符号整形数字,可以打印看看//// string::rfind#include "stdafx.h"#include #include #include using names...
阅读全文
摘要:它们都是对表达式的记法,因此也被称为前缀记法、中缀记法和后缀记法。它们之间的区别在于运算符相对与操作数的位置不同:前缀表达式的运算符位于与其相关的操作数之前;中缀和后缀同理。比如:(4 + 5) × 6- 7 就是中缀表达式- × + 4567 前缀表达式45 + 6×7 - 后缀表达式中缀表达式(...
阅读全文
摘要:建立代码库,其实就是将一些常见的函数封装起来,这样不用每次用到的时候就重写,从而达到代码的复用。在c/c++中是写成头文件,要用的时候就#include “自己写的头文件.h”在java中是写成一个包下面的java文件,要用的时候就import "封装了常用函数的自己写的java包"用C语言中的冒泡...
阅读全文
摘要:原文地址:http://blog.sina.com.cn/s/blog_74a4593801019keb.html main() { char *p="abc123ABC";//char p[]="abc123ABC" int i=0; while(*(p+i)!='\...
阅读全文