随笔分类 -  c/c++技巧

摘要:1.变长一维数组 这里说的变长数组是指在编译时不能确定数组长度,程序在运行时需要动态分配内存空间的数组。实现变长数组最简单的是变长一维数组,你可以这样做: //文件名: array01.cpp #include<iostream> using namespace std; int main() { int len; cin>>len; //用指针p指向new动态分配的长度为len*sizeof(int)的内存空间 int *p=new int[len]; ........... delete[] p; return 0; } 注意int *p=new int[len]; 阅读全文
posted @ 2011-12-06 20:26 有一 阅读(1334) 评论(0) 推荐(0)
摘要:从函数返回数组http://cpp.ezbty.org/book/c_%E9%97%AE%E9%A2%98%E9%9B%86/%E4%BB%8E%E5%87%BD%E6%95%B0%E8%BF%94%E5%9B%9E%E6%95%B0%E7%BB%84由 easyeagel 于 星期三, 2009/08/26 - 15:28 发表函数数组摘要:C++中存在两种参数传递方式,但语言存在上的数组与一般结构不同,它会在参数传递过程转化为指针,这是从C中继承下来。从而使得在函数中返回数组很困难。本文讲述几种可能的方法。问题我们在函数里面准备一个数组,或者说一组数据,现在想把这组数据返回到调用环境中去, 阅读全文
posted @ 2011-11-24 17:58 有一 阅读(350) 评论(0) 推荐(0)
摘要:在这里总结宏的使用方法 欢迎补充1 条件include如下CODE#ifndef MAIN_H_#define MAIN_H_其它内容#endif上面在看到头文件时会看到 作用就是阻止这个头文件被多次include多次include就会出现重复的定义情况 所以需要在每个头文件中都使用这个定义如果还不是很了解要怎样使用 可以看看 c的标准头文件 如fcntl.h2 条件编译如下CODE#ifdef _DEBUGprintf("this debug info\n");#endif如果没有定义_DEBUG宏的话 那么上面那一行是不会编译进去的 但是定义了_DEBUG后 上面那行就 阅读全文
posted @ 2011-11-24 17:54 有一 阅读(1213) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/boluo1982107/article/details/3284794bitset如何初始化、如何转化为double类型的小数、如何进行交叉(可以尝试用string作为中间量,因为bitset可以用string初始化的,但是这样的构造和传递会消耗很多的时间——我讨厌这种不必要的消耗!)假如说我希望计算的精度足够高,将bitset取为64位,那么什么类型的数才能输出?如果不需要输出,那么在取精度的时候,如何将一个64位的bitset转化为double类型的小数?(可能需要自己编程实现了)如何将一个double类型的数字转化为bitset,也就是二进制编 阅读全文
posted @ 2011-11-24 10:57 有一 阅读(727) 评论(0) 推荐(0)
摘要:do{}while(0)do{}while(false)do{}while(__LINE__==-1)1.用在出错处理中,替代goto//使用gotobool Func(){ bool ret = true; ret=Func1(); if(!ret) goto err; ret=Func2(); if(!ret) goto err; ret=Func3(); if(!ret) goto err; //... return true;err: //... return false;}但由于goto地位比较特殊,对是否使用它有很大争议,容易让程序逻辑不易看清,下面是用do{}while(0)替代 阅读全文
posted @ 2011-04-25 15:21 有一 阅读(919) 评论(0) 推荐(0)
摘要:__FILE__, __LINE__, __DATE__, __TIME__ 被定义在全局名子空间中当编译标准 C 程序时,编译器自动定义 __STDC__当编译标准 C++ 程序时,编译器自动定义 __cpluspluscout << __FILE__ << endl; //当前文件路径 cout << __LINE__ << endl; //当前文件编译行数 cout << __DATE__ << endl; //编译日期 cout << __TIME__ << endl; //编译时间 阅读全文
posted @ 2011-04-25 11:25 有一 阅读(271) 评论(0) 推荐(0)