为什么打不开头文件<stddef.h>
程序如下
#include <string>
#include <iostream>
#include <stddef>
using namespace std;
int main()
{
size_t ia;
ia = sizeof( ia );
ia = sizeof ia;
ia = sizeof( int );
int *pi = new int[ 12 ];
cout < < "pi: " < < sizeof( pi )
< < " *pi: " < < sizeof( *pi )
< < endl;
// a string 's size is independent of
// of the length of the string it addresses
string st1( "foobar " );
string st2( "a might oak " );
string *ps = &st1;
cout < < "st1: " < < sizeof( st1 )
< < " st2: " < < sizeof( st2 )
< < " ps: " < < sizeof( ps )
< < " *ps: " < < sizeof( *ps )
< < endl;
cout < < "short :\t " < < sizeof(short) < < endl;
cout < < "short* :\t " < < sizeof(short*) < < endl;
cout < < "short& :\t " < < sizeof(short&) < < endl;
cout < < "short[3] :\t " < < sizeof(short[3]) < < endl;
}
我用的是DEV C++
提示 stddef: No such file or directory.
检查过了头文件是在的,这是C++primer里的一个程序。
[解决办法]
我在 VC 2003 下也打不开这个头文件
[解决办法]
#include <stddef.h> or #include <cstddef>
凡是使用c中的头文件在c++中前面加c.
------解决方案--------------------
#include <cstddef>
[解决办法]
#include <cstddef> or #include <stddef.h>
都行啊,我在dev-C++试了
[解决办法]
那有可能就是你的编译器本身的问题,或者设置的问题。