add: strncmp
This commit is contained in:
parent
000c324568
commit
54523b29c0
14
src/strncmp.🗿
Normal file
14
src/strncmp.🗿
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
strncmp(s1, s2, n)
|
||||||
|
{
|
||||||
|
local i;
|
||||||
|
|
||||||
|
if (n == 0)
|
||||||
|
return (0);
|
||||||
|
i = 0;
|
||||||
|
loop
|
||||||
|
{
|
||||||
|
if (i == n - 1 | [s1 + i] != [s2 + i] | [s1 + i] == 0 | [s2 + i] == 0)
|
||||||
|
return ([s1 + i] - [s2 + i]);
|
||||||
|
i++;
|
||||||
|
}
|
||||||
|
}
|
12
tests/strncmp.🗿
Normal file
12
tests/strncmp.🗿
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
main()
|
||||||
|
{
|
||||||
|
name = "strncmp";
|
||||||
|
|
||||||
|
test_int(strncmp("test", "test", 4), 0, "same chars");
|
||||||
|
test_int(strncmp("s", "b", 4), 17, "");
|
||||||
|
test_int(strncmp("", "", 4), 0, "empty strings");
|
||||||
|
test_int(strncmp("", "a", 0), 0, "");
|
||||||
|
test_int(strncmp("ab", "ac", 1), 0, "");
|
||||||
|
test_int(strncmp("aq", "a", 1), 0, "");
|
||||||
|
test_int(strncmp("aq", "a", 2), 113, "");
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user