C/C++学习
文章平均质量分 65
lyapple2008
只要不停止脚步就没有到不了的地方
展开
-
如何成为一个牛逼的C/C++程序员?
转自http://blog.csdn.net/langeldep/article/details/6333562这个题目的噱头太大,要真的写起来, 足够写一本书了。 本人是过来人, 结合自身的体会和大家交流一下,希望新人能少走弯路。 每个人的情况不一样,我下面的描述可能并不适合每一个看到这篇文章的人。 一、C/C++语言 如果你的基础很差, 建议转载 2012-02-09 13:05:51 · 276 阅读 · 0 评论 -
C++命名空间
原文地址:点击打开链接一、 为什么需要命名空间(问题提出) 命名空间是ANSIC++引入的可以由用户命名的作用域,用来处理程序中 常见的同名冲突。 在 C语言中定义了3个层次的作用域,即文件(编译单元)、函数和复合语句。C++又引入了类作用域,类是出现在文件内的。在不同的作用域中可以定义相同名字的变量,互不于扰,系统能够区别它们。 1、全局转载 2013-06-05 17:26:54 · 316 阅读 · 0 评论 -
STL学习之auto_ptr
C++标准程序库提供的auto_ptr是一种智能型指针,帮助程序员防止”被异常抛出时发生资源泄漏“。1、auto_ptr的初始化template class auto_ptr {private: _Tp* _M_ptr;public: typedef _Tp element_type; explicit auto_ptr(_Tp* __p = 0) __STL_NOT原创 2013-06-07 20:05:27 · 357 阅读 · 0 评论 -
多线程编程
原文地址:点击打开链接转载 2013-07-11 17:02:10 · 363 阅读 · 0 评论 -
N*N矩阵转置,不创建额外的数据结构(In-Place)
一张图像表示成NxN的矩阵,图像中每个像素是4个字节,写一个函数把图像旋转90度。//矩阵(M*N)转置,不能利用额外的空间,在原空间直接操作//当M=N时://操作过程:1、交换主对角线两侧的对称元素// 2、交换第i行和第n-1-i行的元素#include const int N = 4;void exchange(int& a,int& b){ in原创 2013-07-22 19:25:33 · 1224 阅读 · 0 评论 -
《Cracking the Coding Interview》--13.1输出文件的最后K行
方案一:采用比较粗暴的方法,先遍历一遍文件,计算出文件的行数N,然后再从头遍历一遍文件,并输出第N-K行到第N行。void solution1(const string& filePath,const int K){ fstream in(filePath); int linesCount = 0; string lineStr; while(!in.eof())//遍原创 2013-10-08 11:12:36 · 451 阅读 · 0 评论 -
2014找工笔试之睿初科技
题目描述:从自然数1,2,3,,,,M中任取N个数的所有组合,其中M>=N>=1//M>=N>=1//输出1~M中所有N个数的组合#include using namespace std;#define MAX 100int Array[MAX];void Combine(int m,int n){ int i,j; for (i=m;i>=n;--i)//最高位原创 2013-10-30 09:50:03 · 1468 阅读 · 0 评论 -
2014找工笔试之睿初科技
1、给定字符串,输出括号是否匹配,例如,"()" yes;")(" no;"(abcd(e)" no;"(a)(b)" yes。A)使用非递归实现B)用递归实现,不能出现循环#include using namespace std;bool bracketMatch_NoRecursive(const char* str){ int count = 0; while(*原创 2013-10-30 00:00:22 · 1852 阅读 · 0 评论 -
浅谈C中的malloc和free
原帖及讨论:http://bbs.bccn.net/thread-82212-1-1.html 在C语言的学习中,对内存管理这部分的知识掌握尤其重要!之前对C中的malloc()和free()两个函数的了解甚少,只知道大概该怎么用——就是malloc然后free就一切OK了。当然现在对这两个函数的体会也不见得多,不过对于本文章第三部分的内容倒是有了转折性的认识,所以写下这篇文章作为一转载 2013-05-22 10:26:02 · 431 阅读 · 0 评论 -
关于指针和const限定符问题的一个简单判断方法
问题描述:指针与const限定符关系相关复杂,不同的组合就会有不同的意义,让人很犯晕,下面总结一个很实用的识别方法。示例:说出下面指针与const限定符结合后所代表的意义1、const char *p2、char const *p3、char* const p4、const char* const p下面介绍一个简单的判断方法:例1:首先我们从右往左看,写成括号原创 2013-05-18 21:48:24 · 516 阅读 · 0 评论 -
推荐 初学者学习C++的50条忠告
1.把C++当成一门新的语言学习(和C没啥关系!真的。); 2.看《Thinking In C++》,不要看《C++变成死相》; 3.看《The C++ Programming Language》和《Inside The C++ Object Model》,不要因为他们很难而我们自己是初学者所以就不看; 4.不要被VC、BCB、BC、MC、TC等词汇所迷惑——他们都是集成开发环境转载 2012-02-11 11:19:20 · 257 阅读 · 0 评论 -
给正准备学习VC++朋友的建议
说实在的,自己也就是那半瓢水晃来晃去的,“指手画脚”就不敢说了,只是交流一下学习的心得,当初一路买的书籍有很多,突然发现自己有点像读书年代那样,桌面上放着一大难的辅助书籍,一学期结束了崭新的书被迫被我3毛一斤卖掉.... 所以书不在多,在“精与经”。“精”则是同类书籍中能略胜一筹的那种,而“经”则便是经常看的“经”,而不是大多也都压床低的那种。总结了,书如果觉得确实好先推荐朋友买转载 2012-02-13 14:31:03 · 205 阅读 · 0 评论 -
OpenCV图像旋转
OpenCV实现图像旋转:double angle = -atan( static_cast(alignPoint[0].y - alignPoint[1].y) / (alignPoint[1].x - alignPoint[0].x) );//坐标系调整(X方向变成-X方向) angle = angle * 180 / CV_PI; fl原创 2012-09-26 21:12:13 · 1372 阅读 · 0 评论 -
#pragma once与 #ifndef的区别
转自:http://www.cppblog.com/szhoftuncun/archive/2007/10/28/35356.html为了避免同一个文件被include多次1 #ifndef方式2 #pragma once方式在能够支持这两种方式的编译器上,二者并没有太大的区别,但是两者仍然还是有一些细微的区别。 方式一: #ifndef __S转载 2012-09-13 11:10:26 · 202 阅读 · 0 评论 -
【VC++】在查找预编译头使用时跳过解决(转)
环境:VS2008微软官方解释:Visual C++ Concepts: Building a C/C++ ProgramCompiler Warning (level 1) C4627Error Message”: skipped when looking for precompiled header useWhile searching for the location w转载 2012-10-15 08:52:08 · 816 阅读 · 0 评论 -
关键字 mutable (c++)
概述:让一个静态函数能够修改对象的成员关键字 mutable 是一个奇怪的修饰符(specifier),它只能够用于一个类的非静态数据成员。下面我将讨论 mutable 的语义和用法,但是首先我要解释一下 C++ 对象模型的一个关键概念。对象的状态一个对象的状态由其非静态数据成员的值构成,因此,修改一个数据成员将会改变整个对象的状态。将一个成员函数声明为 const 能够保证它不会改变转载 2012-11-26 16:39:08 · 273 阅读 · 0 评论 -
vs2010 "行号显示"设置(vs简单使用)
转自:点击打开链接Microsoft Visual Studio 2010 默认情况下是不显示代码的行号的,但是在编译出错时,可点击下面输出窗口中的错误提示进行定位。但是这样操作起来你有没有感觉到不方便呢。不显示行号时,代码窗口显示如图:-----------------------------------------------------------------------转载 2012-11-22 14:56:58 · 593 阅读 · 0 评论 -
函数参数传递的问题
函数参数传递的问题只需记信一点:传递的永远是参数的副本例1:void change(int a,int b){ int temp = a; a = b; b = temp;}int main(){ int a=10,b=20; printf("a=%d,b=%d\n",a,b); change(a,b); printf原创 2013-04-10 00:24:31 · 383 阅读 · 0 评论 -
左旋转字符串
学习July的程序员编程艺术的小结原文地址:点击打开链接题目描述:定义字符串的左旋转操作:把字符串前面的若干个字符移动到字符串的尾部如把字符串abcdef左旋转2位得到字符串cdefab请实现字符串左旋转的函数,要求对长度为n的字符串操作的时间复杂度为O(n),空间复杂度为方法一:算法描述:将一个字符串分成两部分,X和Y两个部分,在字符串上定义反转的操作X^原创 2013-04-23 20:28:55 · 412 阅读 · 0 评论 -
“error LNK2019: 无法解析的外部符号”之分析
原文地址:http://www.cnblogs.com/hiloves/p/4678848.html最近在用VS 2008开发,初学遇到不少问题,最头疼的问题之一就是:LNK2019。百度一下讲的并不够全面,反正都没解决我的问题。error LNK2019问题在VC 6.0中是error LNK2001: unresolved external symbol问题,可能错误号转载 2017-01-10 10:04:35 · 502 阅读 · 0 评论