Chinaunix首页 | 论坛 | 博客
  • 博客访问: 588783
  • 博文数量: 752
  • 博客积分: 40000
  • 博客等级: 大将
  • 技术积分: 5005
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-13 14:47
文章分类

全部博文(752)

文章存档

2011年(1)

2008年(751)

我的朋友

分类:

2008-10-13 16:44:25

ligang:此类文章非常好!
请作者多发表些,如memcpy、strncpy等函数的剖析,这对于向我这类非科班出身的菜鸟来非常有用。
谢谢!!
(发表于2004-3-17 13:18:00)

xiaojin:不错!

(发表于2004-3-17 15:01:00)

xiaojin:不错!

(发表于2004-3-17 15:01:00)

y5318:写的好
(发表于2004-3-18 7:45:00)

Shawnson.zhang:真不错!
希望这位仁兄能够多多的发表一些类似的文章。

(发表于2004-3-26 18:51:00)

nstar:...
(发表于2004-3-27 23:33:00)

jackcf:好,不过看不懂,初学者
(发表于2004-7-5 16:02:00)

genghiskhan:很好,但如何补齐没有说。
(发表于2006-5-29 8:40:00)

cdlgz:。。。编译器不知道数组的大小如果想在函数内知道数组的大小, 需要这样做:进入函数后用memcpy拷贝出来,长度由另一个形参传进去 fun(unsiged char *p1, int len)
{
  unsigned char* buf = new unsigned char[len+1]
  memcpy(buf, p1, len);
}

这个说得莫名其妙!!
(发表于2006-7-17 15:46:00)

sdhexu:好是好,不过没有做UNICODE的分析。
如果使用了UNICODE
TCHAR ss[100] = _T("Hello");

sizeof(ss) = = ?
lstrlen(ss) = = ?
(发表于2007-5-6 19:18:00)

fidel:cout<cout<上边对齐是如何进行的?
(发表于2008-6-26 12:00:00)

fishinnor:int,long,float等类型的变量在内存中是以偶地址对齐存储的,byte变量没有限制。
当结构体中完全是byte或者完全是int,long,float的话,中间是没有内存空隙的。如果同时包含byte和int两种,这时候就有可能存在内存空隙。
用上边楼主的例子来讲:
class X
{
int i;
int j;
char k;
};
X x;
其中 i占4个byte j占4个byte k表面上占1个byte
但是后边的地址是奇数,其他的数据若想要使用,必须后退3个字符,也就是说k实际上占用了4个byte
所以最后的结果是12


(发表于2008-10-10 11:02:00)

..........................................................................
--------------------next---------------------

阅读(219) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~