【发布时间】:2012-06-13 23:54:33
【问题描述】:
int a = 10;
int* pA = &a;
long long b = 200;
long long* pB = &b;
memcpy (pB,pA,4);
memcpy (pB+1,pA,4);
cout<<"I'm a memcpy!: "<<*(pB)<<endl;
我正在使用 memcpy 进行一些测试,以自学内存的工作原理。我要做的是使 b = 为“1010”。我可以将值从 a 复制到 b,但随后我尝试将内存偏移 1 个字节并再写入 10,但它不起作用,它只输出“10”。
我需要做什么才能获得 1010 的值?
【问题讨论】:
-
pB+1将其增加超过 1 个字节:确切地说是sizeof(long long)字节。