c语言memset对应java,C语言使用memset()函数

函数原型:

/*string.h*/

/* Set N bytes of S to C. */

extern void *memset (void *__s, int __c, size_t __n) __THROW __nonnull ((1)); 即:void *memset(void *s,int ch, unsigned n)

作用:将s所指向的某一块内存中的每个字节的内容全部设置为ch指定的ASCII值, 块的大小由第三个参数指定,这个函数通常为新申请的内存做初始化工作, 其返回值为指向S的指针。

示例1:

#include

#include

#include

int main(int argc, const char *argv[])

{

char * my_str = (char *)malloc (100);

char msg_buf[1024];

memset (my_str, 'a',10 );

memset (msg_buf,0,1024 ); //0->NULL

printf ("%s\n",my_str);

free (my_str);

return 0 ;

}

编译运行:

aaaaaaaaaa

示例2:

//memset可以方便地清空结构体、数组

#include

#include

struct my_struct

{

int x;

char s[ 10];

};

int main(int argc, const char *argv[])

{

struct my_struct ms;

struct my_struct MS[10];

//清空ms

ms .x = 0 ;

ms .s[ 0] = '\0' ;

//memset清空ms

memset (&ms, 0,sizeof(struct my_struct ));

//memset清空MS

memset (MS, 0,sizeof(struct my_struct )*10);

return 0 ;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值