01 2016 档案
CS2013调试DLL
摘要:需要打开两个项目,一个是Win32Project1,由这个项目创建DLL,注意要在DLL函数前加上__declspec(dllexport),这样就会还配套生成一个.lib 然后再打开一个项目,一般为空项目,空项目要进入 属性-->配置属性-->链接器-->输入-->粘贴上前者生成的.lib的文件名
阅读全文
fread与fwrite的自我理解
摘要:size_tfread(void* buff,size_t size,size_t count,FILE* stream)参数1:读取到该buff所指向的内存空间中参数2:每次读取的字节数,单位是字节(单个元素的大小)(单字节数)参数3:读取的次数(元素的个数)(数据项的个数)参数4:目标文件指针返...
阅读全文
可见字符与不可见字符
摘要:不可见字符需要用unsigned char * 来保存, 因为不可见字符的ascii码会有大于127的.而可见字符的最大ascii码就是127,char *只能保存可见字符.
阅读全文
数组指针
摘要:1.typedef int MyArray[5]; MyArray *pArray;2.typedef int (*MyArray)[5]; MyArray pArray;3 int (*p)[5]就算是一维的数组指针,也可以视作二维数组,只有一个行的二维数组.数组指针是行指针,数组指针通常是二级指...
阅读全文
二级指针的三种内存模型
摘要:1. char *buf[] //指针数组 实质上还是属于一维数组,特殊的是每个元素都是指针,2.char buf[10][30] 在传入被调用函数中时,对应的参数不应该只是一个二级指针,如(char **buf),因为与第一种内存模型不一样. 实质上是属于二维数组,每个元素都是实际的值.3. ch...
阅读全文
从一简单程序看C语言内存分配
摘要:int main13(){ char buf[20]="aaaa"; char buf2[] = "bbbb"; char *p1 = "111111"; char *p2 = malloc(100); strcpy(p2, "3333");}"aaaa"首先分配在常量区,bu...
阅读全文
指针作为函数参数的
摘要:不管是几级指针,不管指针的形式是什么.C++编译器只会分配四个字节,真正需要关心的不是这个指针变量,而是指针所指向的内存地址的数据类型.指针的步长会根据指针所指向的数据类型而变化.
阅读全文
堆.栈的内存存放方向,与本身的生长方向
摘要:生长方向:栈的开口向下,堆的开口向上,栈每压入一个内存块,即在栈的下端开辟出来,该内存块的首地址是在该内存块的最下面,内存块里的数据生长方向,是向上的(与栈本身的生长方向是相反的),这一点对堆来讲也适用(当然,堆的开口本来就朝上,很好理解).
阅读全文
浙公网安备 33010602011771号