C++ memset

为指针数组赋初值:

#include <iostream>
#include <cstring>
using namespace std;
int main()
{
    int *p = new int[5];
    memset(p,0,5*sizeof(int));
    for( int i = 0 ; i < 5 ; i ++ )
    {
        cout << *(p + i) << endl;
    }
    delete[] p;
    return 0;
}

memset : 可以理解为 Memory Set

第一个参数 : 数组的地址

第二个参数 : 初始值

第三个参数 : 总的字节数

值得注意的是,如果为值类型赋初值 只能是0或者-1

另外需要引入 : cstring

释放数组指针 :  delete[] p     -> 需要在delete后加 []

时间: 2024-10-26 11:52:44

C++ memset的相关文章

memset memcpy

memset与memcpy的用法: void *memset(void *s,int c,size_t n)总的作用:将已开辟内存空间 s 的首 n 个字节的值设为值 cmemset可以方便的清空一个结构类型的变量或数组memcpy用来做内存拷贝,你可以拿它拷贝任何数据类型的对象,可以指定拷贝的数据长度.例:char a[100],b[50]; memcpy(b, a, sizeof(b));注意如用sizeof(a),会造成b的内存地址溢出.

memset()函数

1. memset()函数原型是extern void *memset(void *buffer, int c, int count)        buffer:为指针或是数组, c:是赋给buffer的值, count:是buffer的长度. 这个函数在socket中多用于清空数组.如:原型是memset(buffer, 0, sizeof(buffer)) Memset 用来对一段内存空间全部设置为某个字符,一般用在对定义的字符串进行初始化为' '或'/0': 例:char a[100];

memset

C语言中memset函数详解 (2011-11-16 21:11:02) 转载▼ 标签: 杂谈 分类: 工具相关 功 能: 将s所指向的某一块内存中的每个字节的内容全部设置为ch指定的ASCII值, 块的大小由第三个参数指定,这个函数通常为新申请的内存做初始化工作 用 法: void *memset(void *s, char ch, unsigned n); 程序例: #include <string.h> #include <stdio.h> #include <memo

memset用法总结

memset是计算机中C/C++语言函数.将s所指向的某一块内存中的前n个 字节的内容全部设置为ch指定的ASCII值, 第一个值为指定的内存地址,块的大小由第三个参数指定,这个函数通常为新申请的内存做初始化工作, 其返回值为指向s的指针. 1.char类型,可以初始化为任何值: 2.int类型,只能初始化为0和-1: 3.bool类型,可以初始化为1: 4.全局变量的数组,建立完值默认为0,不需要用memset: 试验代码 #include<stdio.h>#include<strin

C++:MEMSET的大坑三两事

之前写了一题费用流,竟然硬是在写SPFA时为DIS数组赋初始值用了MEMSET数组QAQ 调试了很久也没有弄明白自己是卡在那里了,,,感觉被自己蠢哭了QWQ 错误的姿势!! #include <cstring> #include <iostream> #include <cstdio> using namespace std; const int INF = 0x3f3f3f; int dis[50005]; int main() { memset(dis,INF,si

strcpy, memcpy, memset函数

一. strcpy函数 原型声明:char *strcpy(char* dest, const char *src); 头文件:#include <string.h> 和 #include <stdio.h> 功能:把从src地址开始且含有NULL结束符的字符串复制到以dest开始的地址空间 说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串. 返回指向dest的指针. 实现代码: char * strcpy(char * strDest,c

编程实现memset

--来看看源码的权威 memset主要用于为新申请的内存进行初始化,它是对较大的结构体和数组进行清零操作的一种最快方法. 函数原型:void *memset(void *s, int ch, size_t n); 函数解释:将s中前n个字节用ch填充,并返回s. 对于这些最基本的函数,总有一种冲动想知道其是怎么实现的. 下面就是根据源码而来的memset实现: void* memset(void* dst,int val, size_t count) { void* ret = dst; whi

memset 与 memcpy

1. memset 需要的头文件 在C中 <string.h> 在C++中 <cstring> 原型: void *memset(void *s, int ch, size_t n); 用法: memset是计算机中C/C++语言函数.将s所指向的某一块内存中的前n个字节的内容全部设置为ch指定的ascii值, 第一个值为指定的内存地址,块的大小由第三个参数指定,这个函数通常为新申请的内存做初始化工作, 其返回值为指向s的指针. 函数解释:将s中当前位置后面的n个字节 (typed

透彻分析C/C++中memset函数

原文:http://blog.csdn.net/dan15188387481/article/details/49621447 在C语言中,经常需要对内存进行操作,里面涉及很多函数,但是memset函数的使用有一点需要大家格外注意,这也是我在做项目时遇到过的一个问题,调试了很久才找出来错误. 函数原型是:void *memset(void *s, int ch, size_t n); 函数功能是:将s所指向的某一块内存中的前n个字节的内容全部设置为ch指定的ASCII值, 第一个值为指定的内存地