(C/C++) memset

C语言:

memset
   extern void *memset(void *buffer,int c,int count);
   #include <string.h>
   功能:把buffer所指内存区域的前count个字节设置成字符c
   说明:返回指向buffer的指针.

char a[100];
          memset(a,‘\0‘,sizeof(a));

C#:

byte[]   test =   new   byte[65536];

Array.Clear(test,0,test.Length);

You could use Enumerable.Repeat:

byte[] a = Enumerable.Repeat((byte)10, 100).ToArray();

The first parameter is the element you want repeated, and the second parameter is the number of times to repeat it.

This is OK for small arrays but you should use the looping method if you are dealing with very large arrays and performance is a concern.

时间: 2024-11-15 21:14:32

(C/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值, 第一个值为指定的内存地

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;     }     del