【学习交流】关于memset的使用问题

brk1985 brk1985 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区


#include <iostream>
using namespace std;

int main(){
int** pint = NULL;
pint = new int* [5];
for(int i=0;i<5;i++){
pint[i] = new int[10];
memset(pint[i], -1 , 10);//①为什么不能准确赋初始值?测了下发现初始值为0是可以的
}
for(int i=0;i<5;i++)
for(int j=0;j<10;j++)
printf("%d\t",pint[i][j]);

//②以下为什么运行会出错???怎么解决?
char** pstr = NULL;
pstr = new char* [5];
for(int i=0;i<5;i++){
pstr[i] = new char[10];
memset(pstr[i], '*' , 10);
}
for(int i=0;i<5;i++)
for(int j=0;j<10;j++)
printf("%s\t",pstr[i][j]);
return 0;
}



①为什么不能准确赋初始值?测了下发现初始值为0是可以的
②以下为什么运行会出错???怎么解决?
...全文

相关推荐

C语言memset函数使用方法详解

过度使用memset。memset函数的使用应该是有限制的,因为它可能会产生性能问题。3. 在函数传参过程中,sizeof操作符可能会返回错误的结果。

weixin_38623707

memset用法 很详细

例如,当尝试使用`memset`将`int`数组的每个元素设为2时: ```c int arr[100]; memset(arr, 2, sizeof(arr)); ``` 实际上,这将导致每个`int

ctirad

memset的初浅体会

在学习 memset 函数时,很多人都会遇到一些初浅的误解。例如,在初始化一个数组或指针时,很多人都会使用 memset 函数来将所有元素设为同样的值。

cxian

C++中memset函数用法详解

例如,错误的使用:```cppchar* s = "Golden Global View";memset(s, 'G', 6); // 不正确!

weixin_38631197

2024年C C++最新C语言——内存函数【memcpy,memmove,memset,memcmp】(2),面试字节跳动C C++工程师该怎么准备

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。需要这份系统化的资料的朋友,可以添加戳这里获取一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长! 🔍重点提取: ①所在头文件: ②函数原型: ● ●(目标空间),(源头),(字节个数) ③函数功能: ●从source指向的位置开始向后复制num个字节的数

2401_84978595
评论 4
收藏 已收藏
分享
返回顶部
brk1985
C++ 语言 65,214 成员 250,514 内容