| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1287 人关注过本帖
标题:菜鸟,关于mem.h的问题
只看楼主 加入收藏
yuntian
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2004-8-19
收藏
 问题点数:0 回复次数:2 
菜鸟,关于mem.h的问题

本人菜鸟,看到一段程序用到了mem.h头文件不知是干什么的?还有memset和memcpy怎么用?请各大虾指点!

[此贴子已经被作者于2004-08-19 16:41:18编辑过]

搜索更多相关主题的帖子: mem 
2004-08-19 16:40
hanpengshan_00
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2004-7-16
收藏
得分:0 
菜鸟,关于mem.h的问题

就是操作内存的函数声明,比如有一个数组,如果初始化成0,1或某个值,

1 可以用循环,每个元素分别赋值

2 最好的方法就是用memset

memcpy就是拷贝内存里的内容到另外一个区域里


2004-08-19 18:17
young
Rank: 3Rank: 3
等 级:论坛游侠
威 望:2
帖 子:223
专家分:160
注 册:2004-9-5
收藏
得分:0 

给个例子吧: typedef char BYTE; char *p; dataSize = strlen("Hello World!") * sizeof(BYTE) + 1; p = (char *)malloc(dataSize); memset(p, 0, dataSize) //把p所指向的内存空间中的每个字节都设为'\0'. '\0'的ASCII码即为0. memcpy(p, "Hello World!", (dataSize - 1)); // 把字符串"Hello World!"拷贝到p所指向的内存空间.

看看memcpy函数是怎么写的吧;哈哈

void *memcpy(void *pvTo, const void *pvFrom, size_t size)

{

assert((pvTo != NULL) && (pvFrom != NULL)); // 使用断言

byte *pbTo = (byte *) pvTo; // 防止改变pvTo的地址

byte *pbFrom = (byte *) pvFrom; // 防止改变pvFrom的地址

while(size -- > 0 )

*pbTo ++ = *pbFrom ++ ;

return pvTo;

}


如果你爱C语言,请你爱指针; 如果你爱指针,请你爱指针的指针;
2004-09-05 14:03
快速回复:菜鸟,关于mem.h的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.010902 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved