今天才搞清楚,memset用于初始化数组,仅能初始化为0值,而不能初始化一个特定的值,这怎么能模糊了呢???

因此,如果对申请的一段存放数组的内存进行初始化,每个数组元素均初始化为特定的值,必须使用循环遍历来解决。

short* pBuffer = (short*)malloc(x_size*sizeof(short));
memset(pBuffer, 0x00, x_size*sizeof(short));
for (int j=0;j<x_size;j++)
{pBuffer[j] = idw_options.dfNoDataValue;
}

C++ Reference对memset函数的解释:

void * memset ( void * ptr, int value, size_t num );

Fill block of memory

Sets the first num bytes of the block of memory pointed by ptr to the specified value (interpreted as an unsigned char).

也就是说,value只能是unsigned char类型,num是Number of bytes to be set to the value.

官方给的例子很好的说明了问题:

/* memset example */
#include <stdio.h>
#include <string.h>int main ()
{char str[] = "almost every programmer should know memset!";memset (str,'-',6);puts (str);return 0;
}

output:

------ every programmer should know memset!

memset初始化数组的问题相关推荐

  1. c++使用memset初始化数组

    如果不明确指出初始化列表,那么基本类型是不会被初始化的(除全局变量和静态变量外),所有的内存都是"脏的":而类类型则会为每个元素调用默认构造函数进行初始化. 使用memset初始化 ...

  2. 使用memset初始化数组

    写在前面的ATTENTION:用memset初始化非char型(eg. int型.float型-)数组时,假如初始化值非0,可能导致错误的结果. 先举个通常用法的栗子, 将int型数组arr的元素初始 ...

  3. C++:用memset初始化数组

    1.初始化数组 定义完数组之后有三种初始化方式 int A[20]={0}; int A[20]; for(i=0;i<sizeof(A)/sizeof(A[0]);i++) A[i]=0; i ...

  4. memset() 初始化类对象

    今天看到迅雷2014校招一道笔试题如下: [cpp] view plaincopy #include <iostream> using namespace std; class paren ...

  5. c/c++初始化数组的三种方法

    1直接赋值 int a[10]={0}; //数组里面的所有元素全都变为0 2 利用for循坏来初始化数组 int a[20]; for(int i=0:i<=sizeof(a);i++) {a ...

  6. memset初始化内存

    在suse 9,运行man memset 查看memset的解释如下: "NAME        memset - fill memory with a constant byte SYNO ...

  7. java声明和初始化数组_Java 中初始化数组

    数组是一种有用的数据类型,用于管理在连续内存位置中建模最好的集合元素.下面是如何有效地使用它们. -- Chris Hermansen(作者) 有使用 C 或者 FORTRAN 语言编程经验的人会对数 ...

  8. C++接收字符串数组_Java 中初始化数组

    数组是一种有用的数据类型,用于管理在连续内存位置中建模最好的集合元素.下面是如何有效地使用它们. -- Chris Hermansen(作者) 有使用 C 或者 FORTRAN 语言编程经验的人会对数 ...

  9. 初始化 数组 java_如何用Java初始化数组

    初始化 数组 java Today we will learn how to initialize an array in java. An array in java is a container ...

  10. java数组初始化0_Java自学-数组 初始化数组

    Java 如何初始化数组 步骤 1 : 分配空间与赋值分步进行 public class HelloWorld { public static void main(String[] args) { i ...

最新文章

  1. 使用blowery.Web.HttpCompress.dll对aspx压缩
  2. hdu 4046 Panda 线段树
  3. Mongodb系列:初识Mongodb
  4. 怎样取消隐式推送_九推,怎样寻找捡漏的机会?
  5. 10. SQL 注入
  6. sql cast函数_数据分析面试必备——SQL你掌握的怎么样?
  7. JavaEE Day10 JavaScript高级
  8. 【树莓派使用】Python3安装OpenCV2报错问题解决方法
  9. 小爱同学app安卓版_小爱同学app下载安卓版-小爱同学 安卓版v2.9.50-PC6安卓网
  10. 银联 php hex2bin,银联支付
  11. c#实现Udp通信(四)--UPD大数据量接收(异步接收)
  12. python计算1的平方减2的平方加3的平方减4的平方怎么算_墙体的面积怎么算的快?墙的平方快速计算方法...
  13. CVPR 2022 | 阿里华科提出:针对场景文本检测的视觉语言模型预训练
  14. Obsidian 插件(一):DataView 的使用
  15. 为什么工作上处处帮助别人,从来不主动为难人,不批评人,换来的却是同事的不尊重?
  16. CVE-2022-1388 F5 BIG-IP权限绕过命令执行漏洞复现
  17. PSINS中地球自转角速度投影与牵连角速度的计算公式与代码
  18. 看一眼就能学会---使用link让docker容器互相通信
  19. python怎样执行curl命令_如何使用python执行curl命令
  20. Android WebAPP开发入门

热门文章

  1. 【学习框架】jeeSite 【maven项目】导入后转成web项目 【转载加原创】
  2. java web xml配置详解_Java Servlet web xml 配置详解
  3. 探测内网c段、外网某网站(ip)的网络服务存活状态
  4. java自动扫描不好使_Spring 自动扫描 不支持jar包 component-scan
  5. java 男女 相邻交换 队形_(Java实现) 洛谷 P1091合唱队形
  6. mysql generator 命令_Mybatis使用命令生成逆向工程的方法
  7. 雷林鹏分享:Redis 简介
  8. [Cocos2dx] CCCamera照相机 详解
  9. 基于hydra的ssh密码的暴力破解
  10. 数据结构 KMP 算法实现