C/C++
文章平均质量分 59
Justin__Ko
这个作者很懒,什么都没留下…
展开
-
static在C语言中的应用
<br />1、概述<br /><br /> static 声明的变量在C语言中有两方面的特征:<br /><br /> 1)、变量会被放在程序的全局存储区中,这样可以在下一次调用的时候还可以保持原来的赋值。这一点是它与堆栈变量和堆变量的区别。<br /><br /> 2)、变量用static告知编译器,自己仅仅在变量的作用范围内可见。这一点是它与全局变量的区别。<br /><br /> 2、问题:Static的理解<br /><br /> 关于static变量,请选择下面所有说法正确的内容:<b转载 2010-07-12 16:44:00 · 1024 阅读 · 0 评论 -
sqlite3中的数据类型
大多数的数据库引擎(到现在据我们所知的除了sqlite的每个sql数据库引擎)都使用静态的、刚性的类型,使用静态类型,数据的类型就由它的容器决定,这个容器是这个指被存放的特定列。Sqlite使用一个更一般的动态类型系统,sqlite中,值的数据类型跟值本身相关,而不是与它的容器相关。Sqlite的动态类型系统和其他数据库的更为一般的静态类型系统相兼容,但同时,sqlite中的动态类型允许它能做翻译 2011-06-27 14:55:00 · 3341 阅读 · 0 评论 -
sqlite3使用简介
一.使用流程要使用sqlite,需要从sqlite官网下载到三个文件,分别为sqlite3.lib,sqlite3.dll,sqlite3.h,然后再在自己的工程中配置好头文件和库文件,同时将dll文件放到当前目录下,就完成配置可以使用sqlite了。使用的过程根据使用的函数大致分为如下几个过程:sqlite3_open()sqlite3_prepare()sqlite3_原创 2011-06-27 16:10:00 · 18146 阅读 · 3 评论 -
const 关键字和常量
Const关键字根据其位置的不同,具有不同的含义 l Const在首部,1定义变量,定义的形式如:consttype varName这个时候varName的值被限定为不可更改 2定义指针类型的变量,consttype *pvar这个时候说明pvar指向的那段内存空间是不可改变的,但是pvar的值可以改变,如:原创 2010-09-17 10:41:00 · 682 阅读 · 0 评论 -
使用ifstream和getline读取文件内容
转自 http://www.cnblogs.com/JCSU/articles/1190685.html假设有一个叫 data.txt 的文件, 它包含以下内容: Fry: One Jillion dollars.[Everyone gasps.]Au转载 2011-09-22 19:37:45 · 1090 阅读 · 0 评论 -
引用的用法
转自http://blog.csdn.net/sandyqy/article/details/3327867 最近看书,看到了引用,对其用法不是很了解。从各处汇总了一些知识,如下: 什么是引用引用是某一变量(目标)的一个别名,对引用的操作与对变量直接操转载 2011-08-15 14:40:58 · 872 阅读 · 0 评论 -
stl::map,stl::multimap,boost::tuple使用简介
一.Map1.前言在程序中,经常会遇见关联的数据对出现,可以把这个数据对中的一个称作索引值,另外一个称作关联值或映射值,假如索引值是整数的时候,可以采用数组或者向量存储这些数据对,但是假如索引值是其他的任意数据类型的时候,就需要用到map了 2.使用map#include map string, string> addresses;添加元素map中的第一个元素用于原创 2011-06-18 15:29:00 · 1667 阅读 · 0 评论 -
回车和换行
回车和换行 对于程序中的回车和换行,一直都没有真正去弄清楚过,这次查了下资料把它理清下 1.由来在计算机还没有出现之前,有一种叫做电传打字机(Teletype Model 33)的玩意,每秒钟可以打10个字符。但是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正好可以打两个字符。要是在这0.2秒里面,又有新的字符传过来,那么这个字符将丢失。于是,研制人员想了个办法解原创 2011-06-23 14:36:00 · 769 阅读 · 0 评论 -
函数指针
函数指针的定义方式T (*Func)(…) ;这样定义了一个返回类型为T的函数指针变量Func,可以用同类型的函数给Func赋值,然后调用Func就可以实现具体函数的调用,如: void MyFun(int x); //这个声明也可写成:void MyFun( int );void (*FunP)(int ); //也可声明成void(*FunP)(int x),但习惯原创 2011-06-14 15:42:00 · 738 阅读 · 0 评论 -
字符编码笔记:ASCII,Unicode和UTF-8
<br />今天中午,我突然想搞清楚Unicode和UTF-8之间的关系,于是就开始在网上查资料。<br />结果,这个问题比我想象的复杂,从午饭后一直看到晚上9点,才算初步搞清楚。<br />下面就是我的笔记,主要用来整理自己的思路。但是,我尽量试图写得通俗易懂,希望能对其他朋友有用。毕竟,字符编码是计算机技术的基石,想要熟练使用计算机,就必须懂得一点字符编码的知识。<br />1. ASCII码<br />我们知道,在计算机内部,所有的信息最终都表示为一个二进制的字符串。每一个二进制位(bit)有0和1转载 2010-09-29 17:17:00 · 571 阅读 · 0 评论 -
指针传递
将指针作为参数传递:void test(float *p);//定义调用:float *a;test(a);调用的这个过程的实质是:将a的地址赋值给p,如果在函数test内对a的地址进行了修改,p仍然是原来的地址值,p指向的地址没有被改变。下面这段程序:voidtest(float *p);int_tmain(intargc, _TCHAR* argv[]){ float *a=0; test(a ); printf("%f/n",*a); getchar(); return 0;}voidt原创 2010-09-16 10:52:00 · 2179 阅读 · 0 评论 -
VC 常用数据类型总结
<br />本文转自 <br />http://www.cnblogs.com/sadier/articles/102085.html<br /> <br />VC 常用数据类型总结 <br />ATOM 原子(原子表中的一个字符串的参考) <br />BOOL 布尔变量 <br />BOOLEAN 布尔变量 <br />BYTE 字节(8位) <br />CCHAR Windows字符 <br />CHAR Windows字符 <br />COLORREF 红、绿、蓝(RGB)彩色值(32位) <br /转载 2010-07-16 12:12:00 · 638 阅读 · 0 评论 -
位域的使用及注意事项
有些信息在存储时,并不需要占用一个完整的字节, 而只需占几个或一个二进制位。例如在存放一个开关量时,只有0和1 两种状态, 用一位二进位即可。为了节省存储空间,并使处理简便,C语言又提供了一种数据结构,称为“位域”或“位段”。所谓“位域”是把一个字节中的二进位划分为几个不同的区域, 并说明每个区域的位数。每个域有一个域名,允许在程序中按域名进行操作。 这样就可以把几个不同的对象用一个字节的二进制位域来表示。一、位域的定义和位域变量的说明位域定义与结构定义相仿,其形式为: struct 位域结构名 {转载 2010-07-12 17:44:00 · 805 阅读 · 0 评论 -
volatile的用法
<br />volatile的本意是易变的。<br /> 一般用于一下几个情况:<br /> (1)中断服务程序中修改的供其他程序检测的变量需要加volatile;<br /> (2) 多任务环境下各任务间共享的标志应该加volatile;<br /> (3)存储器映射的硬件寄存器通常也要加volatile说明,因为每次对它的读写都可能有不同意义<br /> volatile关键字是一种类型修饰符,用它声明的类型变量表示可以被某些编译器未知的因素更改,比如:操作系统、硬件或者转载 2010-07-12 17:31:00 · 474 阅读 · 0 评论 -
typedef的问题
1. 基本解释<br /> typedef为C语言的关键字,作用是为一种数据类型定义一个新名字。这里的数据类型包括内部数据类型(int,char等)和自定义的数据类型(struct等)。<br /> 在编程中使用typedef目的一般有两个,一个是给变量一个易记且意义明确的新名字,另一个是简化一些比较复杂的类型声明。至于typedef有什么微妙之处,请你接着看下面对几个问题的具体阐述。<br />2. typedef & 结构的问题<br /> 当用下面的代码定义一个结构时,编译器报了一个错误,为什么转载 2010-07-12 17:11:00 · 540 阅读 · 0 评论 -
函数名与函数指针
<br />一 通常的函数调用<br /> 一个通常的函数调用的例子:<br />//自行包含头文件<br />void MyFun(int x); //此处的申明也可写成:void MyFun( int );<br /><br />int main(int argc, char* argv[])<br />{<br /> MyFun(10); //这里是调用MyFun(10);函数<br /><br /> return 0;<br />}<br /><br />void转载 2010-07-12 16:57:00 · 536 阅读 · 0 评论 -
C语言宏定义技巧
<br /> 1,防止一个头文件被重复包含 <br /><br />#ifndef COMDEF_H <br /><br />#define COMDEF_H <br /><br /> //头文件内容 <br /><br />#endif <br /><br />2,重新定义一些类型,防止由于各种平台和编译器的不同,而产生的类型字节数差异,方便移植。 <br /><br />typedef unsigned char boolean; /* Boolean value ty原创 2010-07-12 16:55:00 · 462 阅读 · 0 评论 -
关于内存中栈和堆的区别
<br />1、内存分配方面:<br /> 堆:一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式是类似于链表。可能用到的关键字如下:new、malloc、delete、free等等。<br /> 栈:由编译器(Compiler)自动分配释放,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。<br />2、申请方式方面:<br /> 堆:需要程序员自己申请,并指明大小。在c中malloc函数如p1 = (char转载 2010-10-05 23:51:00 · 629 阅读 · 0 评论