#include <string.h>
void * memset( void * ptr, int value, size_t num );
char str[20]; memset(str, '\0', sizeof(str)-1);
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
// 不可以声明为 char *str = "http://c.biancheng.net";
char str[] = "http://c.biancheng.net";
memset(str, '-', 7);
puts(str);
system("pause");
return EXIT_SUCCESS;
}
-------c.biancheng.net
_asm
{
mov edi, f; // edi指向数组地的目标内存的起始处
mov ecx, 1000/4; // 循环次数或移动次数
mov eax, 0; // 每一次移动32位数,都置0
rep stosd; // 移动数据
}
class CMemsetVirtualTest // 测试 带虚类,被memset为0后,虚表是否失效
{
public:
CMemsetVirtualTest()
{
memset(this,0,sizeof(CMemsetVirtualTest));
}
virtual void NormalFun()
{
cout<<"test: NormalFun() 虚表指针有效"<<endl;
}
virtual ~CMemsetVirtualTest()
{
cout<<"test: ~CMemsetVirtualTest() 虚表指针有效"<<endl;
}
};
void testFun1() // 测试:栈上建立的对象
{
CMemsetVirtualTest Ctest;
Ctest.NormalFun();
}
void testFun2() // 测试:堆上建立的对象
{
CMemsetVirtualTest* Ptest = new CMemsetVirtualTest();
Ptest->NormalFun(); // 到这里一定会暴掉
delete Ptest; // 如果屏蔽上句,到这里也一定会暴掉
}
int main()
{
CMemsetVirtualTest Ctest;// 测试:栈上建立的对象
Ctest.NormalFun();// 测试正常:
CMemsetVirtualTest* Ptest = new CMemsetVirtualTest(); // 测试:堆上建立的对象
Ptest->NormalFun(); // 到这里一定会暴掉
delete Ptest; // 如果屏蔽上句,到这里也一定会暴掉
}
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有