1 源代码
#include<stdio.h>
#include<unistd.h>
//#include<sys/time.h>
#include<string.h>
#define __need_time_t
//#define __need_timespec
#include <time.h>
main()
{
struct timeval timeout;
// struct timespec elaped;
("dong\n");
int i=10;
printf("%d",i);
}
2 编译
kaola@kaola:~/dongwork$ gcc -std=c99 testtime.c
testtime.c:13:1: warning: return type defaults to ‘int’ [enabled by default]
main()
testtime.c: In function ‘main’:
testtime.c:16:18: error: storage size of ‘timeout’ isn’t known
struct timeval timeout;
3 解决方法
sudo find / -name "time.h"
usr/lib/syslinux/com32/include/sys/time.h
/usr/lib/syslinux/com32/include/time.h
/usr/src/linux-headers-3.16.0-77/include/uapi/linux/time.h
/usr/src/linux-headers-3.16.0-77/include/linux/time.h
/usr/src/linux-headers-3.16.0-77/arch/hexagon/include/asm/time.h
/usr/src/linux-headers-3.16.0-77/arch/arm/mach-iop13xx/include/mach/time.h
/usr/src/linux-headers-3.16.0-77/arch/arm/mach-iop33x/include/mach/time.h
/usr/src/linux-headers-3.16.0-77/arch/arm/mach-davinci/include/mach/time.h
/usr/src/linux-headers-3.16.0-77/arch/arm/mach-iop32x/include/mach/time.h
/usr/src/linux-headers-3.16.0-77/arch/arm/plat-orion/include/plat/time.h
/usr/src/linux-headers-3.16.0-77/arch/arm/include/asm/mach/time.h
/usr/src/linux-headers-3.16.0-77/arch/blackfin/include/asm/time.h
/usr/src/linux-headers-3.16.0-77/arch/powerpc/include/asm/time.h
/usr/src/linux-headers-3.16.0-77/arch/x86/include/asm/time.h
/usr/src/linux-headers-3.16.0-77/arch/mips/include/asm/time.h
/usr/src/linux-headers-3.16.0-77-generic/include/config/netfilter/xt/match/time.h
/usr/src/linux-headers-3.16.0-77-generic/include/config/rtc/drv/hid/sensor/time.h
/usr/src/linux-headers-3.16.0-77-generic/include/config/printk/time.h
/usr/src/linux-headers-3.16.0-30-generic/include/config/netfilter/xt/match/time.h
/usr/src/linux-headers-3.16.0-30-generic/include/config/rtc/drv/hid/sensor/time.h
/usr/src/linux-headers-3.16.0-30-generic/include/config/printk/time.h
/usr/src/linux-headers-3.16.0-30/include/uapi/linux/time.h
/usr/src/linux-headers-3.16.0-30/include/linux/time.h
/usr/src/linux-headers-3.16.0-30/arch/hexagon/include/asm/time.h
/usr/src/linux-headers-3.16.0-30/arch/arm/mach-iop13xx/include/mach/time.h
/usr/src/linux-headers-3.16.0-30/arch/arm/mach-iop33x/include/mach/time.h
/usr/src/linux-headers-3.16.0-30/arch/arm/mach-davinci/include/mach/time.h
/usr/src/linux-headers-3.16.0-30/arch/arm/mach-iop32x/include/mach/time.h
/usr/src/linux-headers-3.16.0-30/arch/arm/plat-orion/include/plat/time.h
/usr/src/linux-headers-3.16.0-30/arch/arm/include/asm/mach/time.h
/usr/src/linux-headers-3.16.0-30/arch/blackfin/include/asm/time.h
/usr/src/linux-headers-3.16.0-30/arch/powerpc/include/asm/time.h
/usr/src/linux-headers-3.16.0-30/arch/x86/include/asm/time.h
/usr/src/linux-headers-3.16.0-30/arch/mips/include/asm/time.h
/usr/include/x86_64-linux-gnu/sys/time.h
/usr/include/x86_64-linux-gnu/bits/time.h
/usr/include/linux/time.h
/usr/include/time.h
/home/kaola/dongtool/m4-1.4.17/lib/sys/time.h
/home/kaola/dongtool/m4-1.4.17/lib/time.h
/home/kaola/dongwork/kaola-player-android-linux/extra/ffmpeg/libavutil/time.h
/home/kaola/dongwork/kaola-player-android-linux/Linux/include/libavutil/time.h
kaola@kaola:~/dongwork$ vim /usr/include/linux/time.h
3.1 分别查看
usr/include/linux/time.h
/usr/include/time.h
3.1.1 发现加上std= c99编译/usr/include/time.h用的是这个头文件,
只能有struct timespec 结构体的声明。
3.1.2 usr/include/linux/time.h
中有 struct timeval timeout;
// struct timespec elaped;两者的生明