![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++基础
文章平均质量分 71
CodeFoxTiger
这个作者很懒,什么都没留下…
展开
-
库函数strtok的实现
NetBSD实现: 1: char* strtok_r(char* string_org,const char* demial,char** last) 2: { 3: const char* spanp; //span表示分隔,p表示指针 4: char c, sc; //c表示char字符,sc表示 span char 5: char* tok;转载 2012-09-10 11:10:07 · 881 阅读 · 0 评论 -
计算机负数之表达
原码:将一个整数,转换成二进制,就是其原码。如单字节的5的原码为:0000 0101;-5的原码为1000 0101。反码:正数的反码就是其原码;负数的反码是将原码中,除符号位以外,每一位取反。如单字节的5的反码为:0000 0101;-5的原码为1111 1010。补码:正数的补码就是其原码;负数的反码+1就是补码。如单字节的5的补码为:0000 0101;-5的原码为1111 1011转载 2014-08-28 11:11:01 · 802 阅读 · 1 评论 -
GBK unicode等
字符编码的问题看似很小,经常被技术人员忽视,但是很容易导致一些莫名其妙的问题。这里总结了一下字符编码的一些普及性的知识,希望对大家有所帮助。还是得从ASCII码说起说到字符编码,不得不说ASCII码的简史。计算机一开始发明的时候是用来解决数字计算的问题,后来人们发现,计算机还可以做更多的事,例如文本处理。但由于计算机只识“数”,因此人们必须告诉计算机哪个数字来代表哪个特定字符,例如65代表转载 2014-08-11 14:54:24 · 922 阅读 · 0 评论 -
由一道面试题目想到的
class CTask{public: CTask() { std::cout << "Construct is called" << std::endl; }public: static int x; int y; void *operator new(size_t nSize) { x = 0; y = 0; return m原创 2014-09-18 20:22:07 · 668 阅读 · 0 评论 -
再谈VTable
最近十分颓废,为了改变这种状态,建议自己zai'yi'ci原创 2014-04-20 21:56:05 · 757 阅读 · 0 评论 -
计算结构体成员偏移地址的一种方法
同事说起的 个人想了一下 还真没什么思路 后学习了一下 附代码于下 很简便的一种方式 int _tmain(int argc, _TCHAR* argv[]){ struct MyStruct { int m_age; char *m_name; double m_test; }; MyStruct *st = (MyStruct *)100;原创 2014-03-21 19:02:42 · 938 阅读 · 0 评论 -
C/c++中移位与负数表达的一点研究
最近在项目开发过程中,遇到一些移位问题和有符号无符号转换时的表达问题,造成了种种的困惑。所以,个人抽出一点时间与之做了个彻底的了断。废话少说。切入正题. 来看一下代码: int _tmain(int argc, _TCHAR* argv[]){ char ch = 0x13; int value = ch << 8; value = ch << 16;原创 2014-03-21 13:49:56 · 1457 阅读 · 0 评论 -
自己封装的PCM写成WAV文件 欢迎指点
#pragma oncetypedef struct{ unsigned short int channels; unsigned long samplespersec; unsigned short int nBitsPerSamples; }WAVPARAMETER;//wav头的结构如下所示: typedef struct{ char fcc原创 2013-07-19 19:00:58 · 1194 阅读 · 0 评论 -
C++三级指针传址调用
//这是技术交流群中一哥们问到的 实际中这么写肯定很2的 属于没事找抽型的class A{public: void OutPut(){ cout<<"保存的数字 = "<<nTest<<endl; } void SetNum( int num ) { nTest = num; }private: int nTest;};void Test(A ***p1,A原创 2013-06-04 21:42:51 · 1279 阅读 · 0 评论 -
ANSI UNICODE UTF-8
UTF-8是Unicode的一种实现方式,也就是它的字节结构有特殊要求,所以我们说一个汉字的范围是0X4E00到0x9FA5,是指unicode值,至于放在utf-8的编码里去就是由三个字节来组织,所以可以看出unicode是给出一个字符的范围,定义了这个字是码值是多少,至于具体的实现方式可以有多种多样来实现。UTF-8是一种变长字节编码方式。对于某一个字符的UTF-8编码,如转载 2015-03-14 11:25:04 · 675 阅读 · 0 评论