1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
#include <stdbool.h>
static zap_bool memcntfn(void const * const _ptr) {
unsigned int const * ptr = _ptr;
if (*ptr & 0x1u) {
return zap_false;
}
return zap_true;
}
static bool zaptest_test_memcnt(void) {
unsigned int arr[] = {
0x0u,
0x1u,
0x2u,
0x3u,
0x4u,
0x5u,
0x6u,
0x7u,
};
zap_sz num = zap_memcnt(arr,sizeof (arr[0x0u]),sizeof (arr) / sizeof (arr[0x0u]),memcntfn);
zaptest_chk(num,0x4u,zap_sz,"%zX");
arr[0x0u] = 0x1u;
num = zap_memcnt(arr,sizeof (arr[0x0u]),sizeof (arr) / sizeof (arr[0x0u]),memcntfn);
zaptest_chk(num,0x3u,zap_sz,"%zX");
return false;
}
|