RosettaCodeData/Task/Singly-linked-list-Element-definition/Stata/singly-linked-list-element-definition-4.stata
2018-06-22 20:57:24 +00:00

22 lines
426 B
Text

real scalar list_length(struct list scalar a) {
real scalar n
pointer(struct item scalar) scalar p
n = 0
for (p = a.head; p != NULL; p = (*p).next) {
n++
}
return(n)
}
void list_show(struct list scalar a) {
pointer(struct item scalar) scalar p
for (p = a.head; p != NULL; p = (*p).next) {
if (eltype((*p).value) == "string") {
printf("%s\n", (*p).value);
} else {
printf("%f\n", (*p).value);
}
}
}