C/C++基础
文章平均质量分 55
JJ8582
互联网领域小工一枚感兴趣于搜索引擎相关性NLP等
展开
-
C/C++ 代码换行问题
C/C++ 代码换行问题在写代码的时候遇到代码超长的情况下为了代码的美观及方便测试,故需要涉及到代码的换行问题,以下讨论了几种的情况:1、#define的宏 宏定义是以“\”换行,如:#define MAX(a,b) \ ((a)原创 2011-10-18 15:18:03 · 21141 阅读 · 0 评论 -
typename的两个含义
问题:在下面的 template declarations(模板声明)中 class 和 typename 有什么不同? template class Widget; // uses "class"template class Widget; // uses "typename" 答案:没什么不同。在声明一个 template type paramet转载 2011-11-02 15:14:08 · 654 阅读 · 0 评论 -
2维有序数组中查找一个数K的问题
问题描述: 在一个2维有序数组(N*N)中查找一个值为K。 其数组的描述如下图: 其中:行递增序列,列也是递增序列。 解决方案:1:刚开始想到了败者树来查找,发现有点大才小用。并且时间效率也不是很高,败者树主要是来做多路归并或是未排序的数组的一个查找过程。这样的时间复杂度也得O(N*logN);原创 2011-11-04 17:18:51 · 856 阅读 · 0 评论 -
C中的auto、static、register、const、extern和volatile的说明
C语言中的每一个变量和函数有两个属性:数据类型和数据的存储类别。数据类型(整形、字符型等),存储类别是指数据在内存中存储的方法,存储方法有两大类:静态存储类和动态存储类。具体包括四种:自动的(auto),静态的(static),寄存器的(register)和外部的(extern)。 auto变量:函数中的局部变量,如不专门声明static,一般都是动态地分配存储空间。自动变量:在原创 2011-11-08 17:35:40 · 877 阅读 · 0 评论 -
C语言陷阱和缺陷之开始篇
实际工作中写C/C++程序有一年多了。前些日子看到>这本书,匆匆过了一遍以后发现里面讲的东西很实用。特此再学习一遍并和大家分享。原创 2011-12-01 21:48:30 · 1185 阅读 · 0 评论 -
C语言陷阱和缺陷之词法缺陷
1.1 = 不是 ==从Algol派生出来的语言,如Pascal和Ada,用:=表示赋值而用=表示比较。而C语言则是用=表示赋值而用==表示比较。这是因为赋值的频率要高于比较,因此为其分配更短的符号。此外,C还将赋值视为一个运算符,因此可以很容易地写出多重赋值(如a = b = c),并且可以将赋值嵌入到一个大的表达式中。这种便捷导致了一个潜在的问题:可能将需要比较的地方写成赋值。因此,下面的原创 2011-12-15 15:56:43 · 611 阅读 · 0 评论 -
volatile关键字 详解
来源:http://www.cppblog.com/mzty/archive/2006/08/08/10959.htmlvolatile关键字 volatile关键字是一种类型修饰符,用它声明的类型变量表示可以被某些编译器未知的因素更改,比如:操作系统、硬件或者其它线程等。遇到这个关键字声明的变量,编译器对访问该变量的代码就不再进行优化,从而可以提供对特殊地址的稳定访问。转载 2012-02-14 11:22:25 · 521 阅读 · 0 评论 -
不同变量类型在32位和64位机器上的长度
近日在centos下用c++/c写东西,这个程序的服务端运行在64位的centos下,程序是在32位机器上写的。其实这个是没有问题的,在编译的时候就已经决定了其所占内存的长度。如:long a = 0;printf("size of a is %d", sizeof a); 上述代码在32位机器上编译、在32位/64位机器上执行时,结果均为size of a is 4。原创 2012-03-27 13:28:02 · 3284 阅读 · 0 评论 -
ERROR CODE中常用的一些错误信息
关于error.h中的一些要点的解释,最近一段时间开发的东西老是出错,不得以到处找错误代码的信息。Error lock up翻了个底。下面列出以下常用的错误信息以及相对应的解释。#ifndef _I386_ERRNO_H#define _I386_ERRNO_H#define EPERM 1 /* Operation not permitted */#define ENOE原创 2012-03-23 10:59:46 · 7492 阅读 · 0 评论