日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

为什么int型的数组用memset不能清零(memset的使用规范)

發布時間:2025/3/12 编程问答 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 为什么int型的数组用memset不能清零(memset的使用规范) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
問題:為什么這樣用memset不能清零 #include<stdio.h>
#include<string.h>
int main()
{
???int i,a[100];
???memset(a,0,100);//改memset(a,0,sizeof(a));或memset(a,0,100*sizeof(int));就可以了
???for(i=0;i<100;i++)
?????? printf("%d ",a[i]);
???return 0;

}

解決:memset(a,0,100);//改memset(a,0,sizeof(a));或memset(a,0,100*sizeof(int));就可以了


原因:void *memset(void *s, int ch, unsigned n)函數的作用:將s所指向的某一塊內存中的每個字節(注意這里是每個字節,你可能用字符串習慣了)的內容全部設置為ch指定的ASCII值,memset 工具  塊的大小由第三個參數指定,這個函數通常為新申請的內存做初始化工作,   其返回值為指向S的指針。?

原本定義的是整型, 占一個字節?
memset(a,0,100*sizeof(int)) 這樣是100個4個字節的內存

總結

以上是生活随笔為你收集整理的为什么int型的数组用memset不能清零(memset的使用规范)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。