
// string.txt    library of string functions
// part of string-s.txt (library in som compiler)

// copy s2 to s1
to strcpy s1 s2 | i =
	i = 0
	while s2[i] != 0
		s1[i] = s2[i]
		i = i + 1
	s1[i] = 0

to strlen s | k =
	k = 0
	while s[k] != 0
		k = k + 1
	k

to streq s1 s2 | i =
	i = 0
	while and (s1[i] == s2[i]) s1[i]
		i = i + 1
	s1[i] == s2[i]

// s is som-string (packed string)
// convert to array (ar) terminate with 0
to str2array ar s | i k a =
	i = 0
	k = 0
	a = s[i]
	while a != 0
		ar[k] = (a >> 24) & 255
		ar[k+1] = (a >> 16) & 255
		ar[k+2] = (a >> 8) & 255
		ar[k+3] = a & 255
		k = k + 4
		i = i + 1
		a = s[i]
	ar

to prints s =
	fprints 1 s		// fprints is a library function

// --------- test ---------------

to teststring | a b c i =
	a = "1122334455"
	b = array 20
	strcpy b a
	prints b  nl
	c = array 20
	str2array c a
	for i 0 (strlen c)-1
		print c[i] space
	nl

//to main =
//	teststring


// end



