当前位置: 技术问答>linux和unix
用stat的时候说storage size isn't know
来源: 互联网 发布时间:2016-11-13
本文导语: 用gcc就会有这个错误,用g++则不会,这个是为什么? 还有一个比较奇怪的问题就是我学unix网络编程里面把shm_open写进一个函数,函数名Shm_open,就是加了一些错误检查,但是运行的时候段错误?用gdb调试的时候不会有...
用gcc就会有这个错误,用g++则不会,这个是为什么?
还有一个比较奇怪的问题就是我学unix网络编程里面把shm_open写进一个函数,函数名Shm_open,就是加了一些错误检查,但是运行的时候段错误?用gdb调试的时候不会有错误,反而运行良好,然后我把那段复制出来,直接写在main里面,这次没用Shm_open,反而没错,为什么?
还有一个比较奇怪的问题就是我学unix网络编程里面把shm_open写进一个函数,函数名Shm_open,就是加了一些错误检查,但是运行的时候段错误?用gdb调试的时候不会有错误,反而运行良好,然后我把那段复制出来,直接写在main里面,这次没用Shm_open,反而没错,为什么?
|
少了头文件吧。
应该是storage size of 'xxxx' isn't known,编译器找不到这个xxxx对应的类型,加上正确的头文件应该就可以解决了。
用这个命令看看stat的手册,然后按照里面说的把头文件都加上:
$ man 2 stat
我的系统上显示
#include
#include
#include
应该是storage size of 'xxxx' isn't known,编译器找不到这个xxxx对应的类型,加上正确的头文件应该就可以解决了。
用这个命令看看stat的手册,然后按照里面说的把头文件都加上:
$ man 2 stat
我的系统上显示
#include
#include
#include