一个简单的初始化问题
2006-05-30 00:24
351 查看
也许只有实践才知道自己的C语言基础有多薄弱。今天在VC知识库论坛上问了一个弱弱的问题。
我在一个类里声明:
enum { sbf=1024*63 };
char m_cBuffer[sbf];
然后在构造函数里初始化:
m_cBuffer[sbf] = {'/0'};
编译时出现了这些错误:
syntax error : '{'
missing ';' before '{'
missing ';' before '}'
之后我将这个初始化语句改为memset(m_cBuffer,'/0',sbf);就没有了错误。
为什么不能像之前那样初始化呢?
编译环境:Win2000,VC 6.0
经过高手解答我才知道
char m_cBuffer[sbf];
和m_cBuffer[sbf];
是不同的,前者是一个数组,后者是一个元素。
因此只有在声明数组变量的时候才能这么用 char buf[10]= {0}。这也说明编程是一门实践的学问。看书是必要的,但仅靠看书远远不够。只有不断实践才能有所进步。
我在一个类里声明:
enum { sbf=1024*63 };
char m_cBuffer[sbf];
然后在构造函数里初始化:
m_cBuffer[sbf] = {'/0'};
编译时出现了这些错误:
syntax error : '{'
missing ';' before '{'
missing ';' before '}'
之后我将这个初始化语句改为memset(m_cBuffer,'/0',sbf);就没有了错误。
为什么不能像之前那样初始化呢?
编译环境:Win2000,VC 6.0
经过高手解答我才知道
char m_cBuffer[sbf];
和m_cBuffer[sbf];
是不同的,前者是一个数组,后者是一个元素。
因此只有在声明数组变量的时候才能这么用 char buf[10]= {0}。这也说明编程是一门实践的学问。看书是必要的,但仅靠看书远远不够。只有不断实践才能有所进步。
相关文章推荐
- 一个简单的初始化问题
- 一个简单的static类型的初始化问题
- 一个简单的计算器,在此编程当中不断的制造和解决问题;
- 一个简单HTML鼠标事件问题的衍化历程
- ~~把我搞晕了!一个简单的C#语法问题
- 一个简单问题的遗传算法的实现
- 一个关于MoveWindow,ScreenToClient,ClientToScreen,GetWindowRect,GetClientRect的简单问题
- 转载部分代码,窗口点击问题,顺序,初始化数组,简单结构体
- 写一个简单的fragment的demo 时遇到的问题
- 一个简单的问题
- 一个简单的跨库事务问题
- 一个简单的Shell 解答网友问题
- 深入JVM(2): 由一个栈溢出的问题看Java类和对象的初始化
- 一个简单UDP通信程序的问题
- 发布一个史上最简单代码最少Javascript Timer,解决一切定时执行的问题
- java中一个值得注意的问题---类成员初始化与变量初始化的区别
- 写一个简单的chorm插件和遇到的问题
- 一个简单的例子解释obj中key用不用引号的问题
- 由三目运算符 == ? : 引起的一个问题,醉了,基础不过关。记录一下,比较简单的一个问题,只是为了记录一下
- 剖析一个java对象初始化顺序问题