memset VS出错

#include<iostream>#include<cstring>#include<windows.h>usingnamespacestd;intmain(){int... #include <iostream>
#include <cstring>
#include <windows.h>
using namespace std;
int main()
{
int a[5]={1,2,3,4,5};
memset(a,1,20);//如果这里改成memset(a,1,5*sizeof(int))也不可以,因为memset按字节赋值。
for(int i = 0;i < 5;i++)
cout<<a[i]<<" ";

return 0;
}
VS 运行出错
展开
 我来答
bhtzu
2013-10-01 · TA获得超过1.1万个赞
知道大有可为答主
回答量:8088
采纳率:85%
帮助的人:4248万
展开全部

增加了第二行,按16进制输出,可以看到,每个字节都是01,没有问题。

zjfaok
2013-10-01 · TA获得超过6807个赞
知道大有可为答主
回答量:4146
采纳率:62%
帮助的人:1624万
展开全部
希望a[i]的每个成员的值为1?那需要包含<algorithm>头文件,然后用std::fill_n(a,5,1),或者就自己手写循环
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式