char buf[128]={0}是什么意思?

cosperypf 2009-12-16 02:31:56
RT,我觉得理解起来实在有点别扭。。
再就是,我怎么把C的代码在这里写成代码一样的形式?就是关键字用蓝色标出的样式?
...全文
1844 17 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
pengzhixi 2009-12-16
  • 打赏
  • 举报
回复
将0转化为字符就是了。
灌水九段 2009-12-16
  • 打赏
  • 举报
回复
就是buf[0] buf[1]。。。buf[127]全都赋值为‘0’
cosperypf 2009-12-16
  • 打赏
  • 举报
回复
还是不甚理解,我一直都以为char型是要''或者""赋值的,直接赋值会出错,我再去查查资料
kouwenlong 2009-12-16
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 kouwenlong 的回复:]
引用 11 楼 cosperypf 的回复:
buf是char类,直接赋值为0??

char 是短整型,只是你要赋值为整形的话,它会截断。总归都是0.
[/Quote]
说错了,char也可以看成整形,是不过是占一个字节的整形。
你想想,一个四字节的整形给一个一字节的整形赋值,会出现什么情况。就是用0的低字节赋值。
The_facE 2009-12-16
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 cosperypf 的回复:]
buf是char类,直接赋值为0??
[/Quote]

难道像你9L那样赋值为48?
kouwenlong 2009-12-16
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 cosperypf 的回复:]
buf是char类,直接赋值为0??
[/Quote]
char 是短整型,只是你要赋值为整形的话,它会截断。总归都是0.
cosperypf 2009-12-16
  • 打赏
  • 举报
回复
buf是char类,直接赋值为0??
kouwenlong 2009-12-16
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 cosperypf 的回复:]
还是只能理解为相当于下面这段
C/C++ codechar buf[128];for (int i=0;i<128;i++)
{
buf[i]='0';
}
[/Quote]
这样不对,应该是
buf[i] = 0;
cosperypf 2009-12-16
  • 打赏
  • 举报
回复
还是只能理解为相当于下面这段
char buf[128];
for (int i=0;i<128;i++)
{
buf[i]='0';
}
cosperypf 2009-12-16
  • 打赏
  • 举报
回复
//恩我知道了,原来是需要先选中啊,我以前只点了一下没反应,现在选中了要作为代码添加的部分然后再点击#就可以了

不过关键是第一个问题:char buf[128]={0}这段话我能不能这样理解,就是说buf实际上可以理解成为是一个char*类型的,也就是说这里实际上就是一个字符串,每一位都保存的是0,可以这样理解吗?
z569362161 2009-12-16
  • 打赏
  • 举报
回复
字符串全部初始化为0
blainelee 2009-12-16
  • 打赏
  • 举报
回复
补充说明:这句代码会被编译器翻译成调用memset来初始化

[Quote=引用 5 楼 blainelee 的回复:]
严格的说,把数组buf中每一个元素初始化为0,无论数组有多少元素都可以这么写


引用楼主 cosperypf 的回复:
RT,我觉得理解起来实在有点别扭。。
再就是,我怎么把C的代码在这里写成代码一样的形式?就是关键字用蓝色标出的样式?

[/Quote]
blainelee 2009-12-16
  • 打赏
  • 举报
回复
严格的说,把数组buf中每一个元素初始化为0,无论数组有多少元素都可以这么写


[Quote=引用楼主 cosperypf 的回复:]
RT,我觉得理解起来实在有点别扭。。
再就是,我怎么把C的代码在这里写成代码一样的形式?就是关键字用蓝色标出的样式?
[/Quote]
ArmStronger 2009-12-16
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 loaden 的回复:]
注:在红色的A右边。
[/Quote]
也就是铁链形状左边的那个,把代码全部选中,然后点击它,下拉菜单中选 C/C++
「已注销」 2009-12-16
  • 打赏
  • 举报
回复
注:在红色的A右边。
「已注销」 2009-12-16
  • 打赏
  • 举报
回复
[Quote=引用楼主 cosperypf 的回复:]
再就是,我怎么把C的代码在这里写成代码一样的形式?就是关键字用蓝色标出的样式?
[/Quote]
#include <iostream>
#include <string>
#include <windows.h>

using namespace std;

int main()
{
CreateDirectory(_T("D:\\folder"), NULL);
return 0;
}

在发帖的时候,有一个#字图标,点击它...
「已注销」 2009-12-16
  • 打赏
  • 举报
回复
初始化

65,183

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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