C语言字符数组初始化

大_爱 2014-03-10 08:18:00



char str[5];

sprintf(secBuf, "%s", "test");



字符数组可以这样操作么?
...全文
353 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
__phoenix 2014-03-11
  • 打赏
  • 举报
回复
这个不叫初始化,去查一下sprintf函数看看。。。这些问题要自己慢慢去探索
mujiok2003 2014-03-11
  • 打赏
  • 举报
回复
char str[5] = "test";
如此更好
bedynamic 2014-03-11
  • 打赏
  • 举报
回复
引用 3 楼 zhao4zhong1 的回复:
str和secBuf不是一回事!
char str[5];
sprintf(str, "%.4s", "test");
+1
tuzhutuzhu 2014-03-11
  • 打赏
  • 举报
回复
引用 2 楼 beefcattlexiaoyang 的回复:
[quote=引用 1 楼 u013573183 的回复:] 可以这样操作,但这个不叫初始化,而是叫赋值 初始化的意思是在创建变量的时候同时给他的值 与你这个赋值的区别是 他首先创建变量然后给予一个值,然后再执行你这个赋值表达式再次赋值
会引起内存泄漏的问题么?[/quote] 你先搞清楚什么叫做内存泄露好吗?
LLxz_0609 2014-03-11
  • 打赏
  • 举报
回复
secBuf是什么,你这代码写的不全。
djmdjmdjm 2014-03-11
  • 打赏
  • 举报
回复
不会内存泄露,这又没有超界。
starytx 2014-03-11
  • 打赏
  • 举报
回复
secBuf是str吗?
赵4老师 2014-03-11
  • 打赏
  • 举报
回复
str和secBuf不是一回事!
char str[5];
sprintf(str, "%.4s", "test");
大_爱 2014-03-10
  • 打赏
  • 举报
回复
引用 1 楼 u013573183 的回复:
可以这样操作,但这个不叫初始化,而是叫赋值 初始化的意思是在创建变量的时候同时给他的值 与你这个赋值的区别是 他首先创建变量然后给予一个值,然后再执行你这个赋值表达式再次赋值
会引起内存泄漏的问题么?
敬畏者 2014-03-10
  • 打赏
  • 举报
回复
可以这样操作,但这个不叫初始化,而是叫赋值 初始化的意思是在创建变量的时候同时给他的值 与你这个赋值的区别是 他首先创建变量然后给予一个值,然后再执行你这个赋值表达式再次赋值

70,022

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧