Hej alle
I LTP -
POSIX test, der er en sag i open_posix_testsuite \ overensstemmelse \ Interfaces \ timer_gettime \ speculative/6-1.c
Citat:
# include <time.h>
# include <stdio.h>
# include <errno. h>
/ / # include "posixtest.h"
# define BOGUSTID 9.999
int vigtigste (int argc, char * argv [])
(
timer_t tid;
struct itimerspec sine;
tid \u003d (timer_t) BOGUSTID;
if (timer_gettime (tid, og dens) \u003d\u003d -1) (
if (EINVAL \u003d\u003d errno) (
printf ( "FCN returneres -1 og errno\u003d\u003d EINVAL \ n ");
/ / return PTS_PASS;
) Else (
printf ( "FCN returneres -1 men errno! \u003d EINVAL \ n ");
printf ( "Test failed \ n");
/ / return PTS_FAIL;
)
)
printf ( "FCN ikke return -1 \ n");
/ / return PTS_PASS;
)
|
Jeg kører ovenstående kode, vil det har et segment fejl, hvis jeg ændre det til nedenfor, det virker godt
Citat:
# include <time.h>
# include <stdio.h>
# include <errno. h>
/ / # include "posixtest.h"
# define BOGUSTID 9.999
int vigtigste (int argc, char * argv [])
(
timer_t tid;
struct itimerspec sine;
int tval \u003d BOGUSTID;
printf ( "% d \ n", tval);
tid \u003d (timer_t) &tval;
printf ( "% d \ n", tid);
if (timer_gettime (tid, og dens) \u003d\u003d -1) (
if (EINVAL \u003d\u003d errno) (
printf ( "FCN returneres -1 og errno\u003d\u003d EINVAL \ n ");
/ / return PTS_PASS;
) Else (
printf ( "FCN returneres -1 men errno! \u003d EINVAL \ n ");
printf ( "Test failed \ n");
/ / return PTS_FAIL;
)
)
printf ( "FCN ikke return -1 \ n");
/ / Return PTS_PASS;
)
|
Nogen kan fortælle mig hvorfor?