История изменений
Исправление LINUX-ORG-RU, (текущая версия) :
ЯННП, но вот :)
#include <stddef.h>
#define OLOLO 2
/*
* h_pose : ptr addres
* q_pose : ptr addres
* h_lens : number_elements * sizeof(element_type)
* q_lens : number_elements * sizeof(element_type)
*/
unsigned char
is_contained(ptrdiff_t h_pose, size_t h_lens, ptrdiff_t q_pose, size_t q_lens)
{
return ((q_pose >= h_pose) && ((h_pose+q_lens) <= (h_pose + h_lens)));
}
int main(int argc , char * argv[])
{
if(argc > 1)
{
switch (argv[1][0]-'0')
{
case 1: return is_contained(5,50,5,50);
case 2: return is_contained(5,50,4,49);
case 3: return is_contained(5,50,6,49);
case 4: return is_contained(5,50,5,51);
case 5: return is_contained(5,50,4,51);
}
}
return OLOLO;
}
dron@gnu:~$ gcc -Wall -Wextra -std=c89 -pedantic test.c
dron@gnu:~$ ./a.out 1 ; echo $?
1
dron@gnu:~$ ./a.out 2 ; echo $?
0
dron@gnu:~$ ./a.out 3 ; echo $?
1
dron@gnu:~$ ./a.out 4 ; echo $?
0
dron@gnu:~$ ./a.out 5 ; echo $?
0
Исходная версия LINUX-ORG-RU, :
ЯННП, но вот
#include <stddef.h>
#define OLOLO 2
/*
* h_pose : ptr addres
* q_pose : ptr addres
* h_lens : number_elements * sizeof(element_type)
* q_lens : number_elements * sizeof(element_type)
*/
unsigned char
is_contained(ptrdiff_t h_pose, size_t h_lens, ptrdiff_t q_pose, size_t q_lens)
{
return ((q_pose >= h_pose) && ((h_pose+q_lens) <= (h_pose + h_lens)));
}
int main(int argc , char * argv[])
{
if(argc > 1)
{
switch (argv[1][0]-'0')
{
case 1: return is_contained(5,50,5,50);
case 2: return is_contained(5,50,4,49);
case 3: return is_contained(5,50,6,49);
case 4: return is_contained(5,50,5,51);
case 5: return is_contained(5,50,4,51);
}
}
return OLOLO;
}
dron@gnu:~$ gcc -Wall -Wextra -std=c89 -pedantic test.c
dron@gnu:~$ ./a.out 1 ; echo $?
1
dron@gnu:~$ ./a.out 2 ; echo $?
0
dron@gnu:~$ ./a.out 3 ; echo $?
1
dron@gnu:~$ ./a.out 4 ; echo $?
0
dron@gnu:~$ ./a.out 5 ; echo $?
0