C++
文章平均质量分 77
Sophia_Xwt
这个作者很懒,什么都没留下…
展开
-
java与c++的比较
很不幸,又转营java,对c++的stl库还比较熟悉,但是如果不继续锻炼就会忘记的我,在艰难的学习java中只能不忘初心,将java和c++的比较记录在此,希望可以融会贯通,终归我佛,阿弥陀佛~~1、 java final 和 c++ const的区别 http://www.cnblogs.com/louistao/archive/2011/03/13/1982590.html 摘自此原创 2014-12-06 15:03:43 · 663 阅读 · 0 评论 -
strupr
原型:extern char *strupr(char *s);用法:#include 功能:将字符串s转换为大写形式说明:只转换s中出现的小写字母,不改变其它字符。返回指向s的指针。兼容性说明:strupr不是标准C库函数,只能在VC中使用。在linux gcc环境下需要自行定义这个函数。举例:// strupr.c#include转载 2013-11-10 17:13:54 · 1397 阅读 · 0 评论 -
assert() debug() release()
assert()宏是用于保证满足某个特定条件,用法是:assert(表达式);如果表达式的值为假,整个程序将退出,并输出一条错误信息。如果表达式的值为真则继续执行后面的语句。使用这个宏前需要包含头文件assert.h例如#include #include void main(){ float a,b; scan("%f %f",&a,&b); asse转载 2013-11-09 21:04:46 · 954 阅读 · 0 评论 -
BOOL 和bool
一:在网上找到了BOOL和bool的区别:1、类型不同BOOL为int型bool为布尔型2、长度不同bool只有一个字节BOOL长度视实际环境来定,一般可认为是4个字节3、取值不同bool取值false和true,是0和1的区别BOOL取值FALSE和TRUE,是0和非0的区别二:bool是标准C++数据类型,可取值true和false。单独占一个字节,转载 2013-11-09 20:57:37 · 791 阅读 · 0 评论 -
c_str()
const char *c_str();c_str()函数返回一个指向正规C字符串的指针, 内容与本string串相同. 这是为了与c语言兼容,在c语言中没有string类型,故必须通过string类对象的成员函数c_str()把string 对象转换成c中的字符串样式。注意:一定要使用strcpy()函数 等来操作方法c_str()返回的指针 比如:最好不要这样: char* c;转载 2013-11-09 20:05:48 · 775 阅读 · 0 评论 -
C++预处理宏定义
在看程序的时候看到了#ifdef之标志,感觉有写混淆,于是就查了查,结果就把预处理宏定义之类的给翻出来了,重新整理一下。1、C++提供的预处理,宏定义、文件包含、条件编译三种,预处理是编译之前要做的工作,不进行语法检查,预处理就是在进行编译的第一遍词法扫描和语法分析之前所作的工作。说白了,就是对源文件进行编译前,先对预处理部分进行处理,然后对处理后的代码进行编译。这样做的好处是,经过处转载 2013-06-27 11:15:26 · 1070 阅读 · 0 评论 -
size_t和size_p y引出的C++中的双冒号
一、1、两个冒号表示作用域操作符。::操作符在其左操作数的作用域内找到其右操作数的名字。用于访问某个命名空间中的名字,如std::cout,表明名字cout来自命名空间std。同样的可以用来从某个类取名字,如string::size_type,表明size_type是string类定义的2、域名解析符! 返回值类型名 类名::函数成员名(参数表) { 函数体。 } 这个是在类内声转载 2013-11-19 15:20:40 · 1076 阅读 · 0 评论 -
虚函数
http://blog.chinaunix.net/uid-25749806-id-321984.html你一定不要被 "虚函数 "这个词吓着,我一开始就被它吓着了,以为这又是个什么东东。 现在我就把我脑子里的虚函数聊聊,各位大见笑了: 在我们现实生活中有很多词,比如“开”这个词,现在有一辆汽车和一辆自行车在你面前,我对你说,“请把这个车开起来!” 当我指向汽车时,你就会加转载 2013-11-01 16:42:52 · 721 阅读 · 1 评论 -
i++ 和++i
今天在论坛上无意中看到有人问关于i++和++i的问题,感觉自己也不怎么熟悉,就仔细看了一下。感觉有位大侠的回复相当不错,很有特色,把问题讲得很明白,受教了。这里摘录一下,学习学习!------------------------------------------------------------------------------------------------------转载 2013-11-01 10:54:24 · 654 阅读 · 0 评论 -
VS2012的一些问题
一个VS2010编写的文件,导入到了vs2012里面,首先会出现版本的不同,可以在跳出的文本框直接选择更新即可,然后出现了PDB不兼容的问题,不能在项目上进行右键清除,要在工具栏上的生成中进行清除解决方案,再进行重新生成解决方案生成,就是将项目文件编译成可执行文件等运行时必须的文件。生成解决方案,就是将该解决方案里所有项目进行编译,生成文件,与生成的功能类似。开始执行(不调试),就原创 2013-10-31 11:28:21 · 1011 阅读 · 0 评论 -
1015_for_each()的使用
http://www.cnblogs.com/Purple_Xiapei/archive/2012/05/27/2520477.htmlfor_each使用方法详解[转]Abstract之前在(原創) 如何使用for_each() algorithm? (C/C++) (STL) 曾經討論過for_each(),不過當時功力尚淺,只談转载 2013-10-14 10:06:48 · 696 阅读 · 0 评论 -
1015_sort()的用法
MSDN中的定义:template void sort(RanIt first, RanIt last); //--> 1)template void sort(RanIt first, RanIt last, Pred pr); //--> 2)头文件:#include using namespace std;1.默认的sort函数是按升序排。对转载 2013-10-13 21:01:48 · 611 阅读 · 0 评论 -
C++深度学习—资源问题,memset
1、http://mindhacks.cn/2012/08/27/modern-cpp-practices/看到有关于ScopeGuard的描述,真心大神啊!一定要好好琢磨一下。2、memset()方法,void *memset(void *s,int c,size_t n)总的作用:将已开辟内存空间 s 的首 n 个字节的值设为值 c。转载 2013-07-02 15:41:54 · 886 阅读 · 0 评论 -
1014(2)string的用法
https://www.byvoid.com/blog/cpp-stringstring 在C++中功能是十分强大的substring 的用法ascii码在字符串中的使用,可以限定范围,大写英文字母 65-90 小写字母91-116 数字0-9是48开始C++ string 详解任何人对本文进行引用都要标明作者是Nicolai M.Josuttis/////////转载 2013-10-10 20:23:46 · 788 阅读 · 0 评论 -
指针错误总结
C/C++编程,指针起着非常重要的作用,然而,使用指针却容易出现各种各样的错误,而且很多错误都难以察觉,编程者喜欢它却惧怕着它。下面我就根据自己这几年的编程经验,对使用指针过程中容易出错的进行总结。 1. 指针越界:是使用指针最容易出错的情况之一。 特点:编译器没办法确定其错误,有时候也能够正常运行,如果出错了,将导致整个程序崩溃!这种错误很难直接查出其具体的错误位置,排转载 2013-11-25 21:26:56 · 1909 阅读 · 0 评论 -
jdk 与 jre的区别
很多程序员已经干了一段时间java了依然不明白jdk与jre的区别。JDK就是Java Development Kit.简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境。SDK是Software Development Kit 一般指软件开发包,可以包括函数库、编译程序等。JRE是Java Runtime Enviroment是指Java的运行环境,是面向Ja转载 2013-11-12 15:36:26 · 459 阅读 · 0 评论 -
c++ 指针精髓
指针是C和C++语言编程中最重要的概念之一,也是最容易产生困惑并导致程序出错的问题之一。利用指针编程可以表示各种数据结构, 通过指针可使用主调函数和被调函数之间共享变量或数据结构,便于实现双向数据通讯;并能像汇编语言一样处理内存地址,从而编出精练而高效的程序。指针极大地丰富了C和C++语言的功能。在本文中,主要分两部分对指针进行讨论。首先,基础篇讨论关于指针的内容和运算操作等,可以是读者对转载 2013-11-25 21:38:50 · 859 阅读 · 0 评论 -
linux 下编译c++
目前所要求的水平只是在linux下输出一个hello world 的字样。。so ,是非常的初步阶段,however ,原创 2014-05-23 21:37:53 · 709 阅读 · 0 评论 -
hashmap 的一些研究
今天面试被问到hashmap 的有关东西,结果这个很经典的结构我是了解它的原理,可是在语言中的具体实现原理还是不清楚的,仅仅是用过而已,所以回答的。。现在深入的整理一下:在java 里面是有hashmap 的数据结构在c++里面有map 的数据结构介绍了java 中的hashmap 的原理http://www.cnblogs.com/skywang12345/p/3310835转载 2014-03-27 12:48:43 · 671 阅读 · 0 评论 -
概率——某阿里巴巴笔试题集第23题
某阿里巴巴笔试题集第23题分类: Algorithm and Arithmetic 泛科学技术与系统 基础计算科学2011-10-30 10:11 11244人阅读 评论(42) 收藏 举报阿里巴巴randomstring面试废话少说了,原题集出处:http://blog.csdn.net/hackbuteer1/article/details/6902917题转载 2014-03-28 14:50:36 · 892 阅读 · 0 评论 -
leetcode word ladder II
word ladder I 在看答案的基础上,搞懂了,主要是利用BFS,广度遍历,同时是几个辅助空间的构造,两个队列,承载每次在dict 里面找到的单词并作为下一次循环查找的单词。注意的是每次放进来的单词是必须没有访问过的,代码如下:class Solution {public: int ladderLength(string start, string end, set &dict)原创 2014-03-11 11:32:35 · 766 阅读 · 0 评论 -
boost库的添加
1.去www.boost.org下载最新的boost,我下载了boost_1_46_1.7z2.(我放在D:/cpp目录下)解压到当前文件夹3.打开VS2010->VS TOOLS->VS命令提示4.CD D:/cpp/boost_1_46_1 5.输入bootstrap,便生成bjam.exe文件6.输入bjam toolset=msvc-10.0 var转载 2014-02-17 15:38:19 · 1212 阅读 · 0 评论 -
INT_MIN
http://www.hardtoc.com/archives/119一篇英文博客说 INI_MIN 的,通读了一遍没有看懂,TBC,看懂等在这里说自己的解释转载 2014-01-20 21:00:17 · 1449 阅读 · 0 评论 -
Manacher 算法理解
题目描述: 给你一个字符串,从中找出长度最大的回文字符子串。思路感想:题目拿到手,上来就蒙了,这一个个比较遍历字符然后再比较是不是回文这不得累死啊。。而且这具体怎么实现也很繁杂,无奈之下,看答案,得到一个动态规划方法。动态规划思路:依次遍历字符串,每次遍历都检查从第一个字符到当前字符之间的所有字符,需要一个辅助空间,记录每次比较时上一次比较时元素回文的状况,这个值将作为下一次比较时的条件之原创 2014-01-16 16:25:54 · 804 阅读 · 0 评论 -
C++中引用和指针的区别
C++引用与指针的比较 引用是C++中的概念,初学者容易把引用和指针混淆一起。 一下程序中,n是m的一个引用(reference),m是被引用物(referent)。 int m; int &n = m; n相当于m的别名(绰号),对n的任何操作就是对m的操作。 所以n既不是m的拷贝,也不是指向m的指针,其实n就是m它自己。 引用的规则: (1)引用被创转载 2014-01-08 12:45:32 · 621 阅读 · 0 评论 -
c++里面的字符数组和字符串及其分割
做了一道题,又在输入上耗费时间,真是让人恼火,不管怎么着,都是自己基础不牢固的缘由,那就得拿出时间来复习巩固扎实,自作孽自己受,不受就得着不可活吧!!1、结构体声明动态数组,按照平常的来就好了。2、结构体声明变量,Node, *Link ,指针或者直接一个节点3、字符数组初始化的时候,一定是在初始化时候定义,或者一个个字节去赋值,否则不能单独拿变量去赋值或者整体赋值,结构体里面更是如此原创 2014-01-08 15:07:39 · 4543 阅读 · 0 评论 -
PAT3-07中缀表达式 strtok_r()的使用
逆波兰式的转换因为题目中浮点数及其带符号的操作数的输入,使得自己忙活以阵子,然后发现只用一个栈来存储操作符号的时候,重新改算法,然后又在输出时必须间隔一个空格处卡住,于是一怒之下不写这道题目,转而攻中缀表达式,结果页是在接受字符串的时候耽搁了半天,终于写出了AC的程序,不过。。各人感觉对给出用例的最后一个有点奇怪,因为明显用本程序是error ,但是没有去特殊判断,然后就AC了,表示奇怪。原创 2014-01-07 20:40:34 · 908 阅读 · 0 评论 -
C++ 小数点输出
setprecision()与setiosflags()(c++小数点后面精确到n位) 2009-11-23 19:42:07| 分类: c/c++|字号 订阅使用setprecision(n)可控制输出流显示浮点数的数字个数。C++默认的流输出数值有效位是6。如果setprecision(n)与setiosflags(ios::fixed)合用转载 2013-12-20 10:45:45 · 3463 阅读 · 1 评论 -
1018 _剪子包袱锤
觉得自己写的这个还是有很差,而且没有完全Accept ,还是没有进行好的设计。TBC#include#includeusing namespace std;//学习了一下map 的使用,但是此题不能用map,要找到一个更好的去描述规则的东西//这个题总而言之是很繁琐,需要注意很多变量的规整,只要有时间久能做出来,但是没有什么技巧的东西,但是规定时间里面要找到相应的方法快速很重要//原创 2013-12-17 21:32:54 · 1242 阅读 · 0 评论 -
C++ 中宏函数和inline
摘自问答中的答案其实我倒觉得#define 并不是人们想象的那么不好用define出现问题的地方是比较少碰到的:如果只是用define定义一些常量或一些函数的简写是非常有用的:比如: 1:#define PI 3.1415926 2:#define out(t) return t; 3: #define until(x) whil转载 2013-12-05 19:18:25 · 695 阅读 · 0 评论 -
1007_list的用法及素数的判断
本想此题用list, 结果list是个双向链表,随机访问困难,因此在最后两个相邻元素进行比较的时候不好进行处理,所以最后不得已又用数组来进行的。让我们定义 dn 为:dn = pn+1 - pn,其中 pi 是第i个素数。显然有 d1=1 且对于n>1有 dn 是偶数。“素数对猜想”认为“存在无穷多对相邻且差为2的素数”。现给定任意正整数N (5),请计算不超过N的满足猜想原创 2013-09-28 16:05:29 · 1048 阅读 · 0 评论 -
c++ /c malloc
1,malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存。 2,对于非内部数据类型的对象而言,光用maloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之前要自动执行析构函数。由于malloc/free是库函数而不是运算符,不在编译器控制权限之内,不能够把执行构造函数和析构函数的任转载 2013-07-10 22:10:14 · 771 阅读 · 0 评论 -
1009_(1)字符串分割strtok
当得到了含有空格的字符串的时候,想要以空格为边界进行分割时怎么办呢?1、string里面的,但是vs里面未通过 string s; getline(infile,s); string[] str = s.split(" ");2http://blog.csdn.net/libuding/article/details/5870089str原创 2013-09-28 19:41:16 · 1001 阅读 · 0 评论 -
数据结构 二维数组表示一维数组
1、指针变量:是指其变量的值为内存的一个存储位置的数据类型变量(也就是指针的值指一个地址) 动态内存分配:是指变量存储空间的分配过程是在程序执行时由操作系统提供可用的内存空间。2、看数组代表矩阵的表示方法,引发了关于一维指针表示二维数组的方法和二维数组作为参数的问题1)比如:a[3][4]是一个二维数组,怎么定义一个指针p,使得它能替代数组名a?比如对于访问一原创 2013-08-03 11:31:51 · 2760 阅读 · 0 评论 -
C++ 头文件
1、而""首先在当前目录下寻找,如果找不到,再到系统目录中寻找。 这个用于include自定义的头文件,让系统优先使用当前目录中定义的。http://kooyee.iteye.com/blog/340846 2、矩阵的转置, 稀疏矩阵的压缩方式表示,总会出现一些不可避免的事情。需要一步步调试!原创 2013-08-06 15:47:09 · 574 阅读 · 0 评论 -
C++文件流_矩阵相乘
今天做了一个矩阵相乘的例子,里面涉及到了一点点的C++文件流的知识,现整理如下。1、默认的文件是放在当前工作空间目录中与源文件在同一目录下的。如果要更改文件位置只需要写出全名即可,不过注意其中的分隔符是双斜杠如:"D:\\MyFiles\\ReadMe.txt"2、简单的文件读写 fstream ifstream ofstream fin>>a[i][j] 从文件中输出到程序中原创 2013-08-01 10:50:11 · 940 阅读 · 0 评论 -
C++ link错误
win32控制台应用程序和 win32项目不同错误 LNK1120 为您提供该链接的无法解析的外部对象数 (number)。导致无法解析的外部对象的条件由错误 LNK2001 描述,此错误出现在该错误信息之前(对每个无法解析的外部对象都出现一次)。 //就是说每出现一次LNK1120都会在之前出现一个LNK2001 所以主要是解决LNK转载 2013-08-02 09:43:40 · 1548 阅读 · 0 评论 -
VC C++
C和C++是一种编程语言,加上V之后变成了一种开发环境。百度热心网友如此解释:Visual C++ 全称是 MicroSoft Visual C++, 即微软的 C++ 和C的编译器。 用Visual C++写程序,即用微软的C++语言写程序,可以调用微软的C++ 的MFC等程序库,应用微软的C++ 的头文件。 MicroSoft Visual C++ 是 C++ 语言或编译器的一种,原创 2013-07-15 11:19:40 · 840 阅读 · 0 评论 -
STL
1、STL的特点是将数据结构和算法分离开来,STL算法作为模板函数提供,STL组件是另外一个定义,STL不是面向对象的,它依赖与模板而不是封装、继承和多态性,这是OOP三个要素。STL的算法基于模板的,所有函数几乎完全通用,不依赖于特定的数据类型。2、STL三个基本组件:迭代器,如同指针,而事实上原创 2013-07-15 11:25:58 · 685 阅读 · 0 评论 -
C++ 学习 set itoa
http://blog.sina.com.cn/s/blog_779cf3410101389s.html原创 2013-07-11 16:52:28 · 720 阅读 · 0 评论