#include <stdio.h>
#define countof(array) (sizeof(array) / sizeof((array)[0]))
static const char list1[][128] =
{
"file1", "file2", "file3",
};
static const char *list2[] =
{
"file1", "file2", "file3",
};
static void test1(const char (*list)[128], size_t num)
{
for (size_t i = 0; i < num; i++)
printf("\t%zu: %s\n", i
, list
[i
]); }
static void test2(const char **list, size_t num)
{
for (size_t i = 0; i < num; i++)
printf("\t%zu: %s\n", i
, list
[i
]); }
int main(void) {
test1(list1, countof(list1));
test2(list2, countof(list2));
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgojZGVmaW5lIGNvdW50b2YoYXJyYXkpIChzaXplb2YoYXJyYXkpIC8gc2l6ZW9mKChhcnJheSlbMF0pKQoKc3RhdGljIGNvbnN0IGNoYXIgbGlzdDFbXVsxMjhdID0KewogICAgImZpbGUxIiwgImZpbGUyIiwgImZpbGUzIiwKfTsKCnN0YXRpYyBjb25zdCBjaGFyICpsaXN0MltdID0KewogICAgImZpbGUxIiwgImZpbGUyIiwgImZpbGUzIiwKfTsKCnN0YXRpYyB2b2lkIHRlc3QxKGNvbnN0IGNoYXIgKCpsaXN0KVsxMjhdLCBzaXplX3QgbnVtKQp7CiAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG51bTsgaSsrKQogICAgICAgIHByaW50ZigiXHQlenU6ICVzXG4iLCBpLCBsaXN0W2ldKTsKfQoKc3RhdGljIHZvaWQgdGVzdDIoY29uc3QgY2hhciAqKmxpc3QsIHNpemVfdCBudW0pCnsKICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbnVtOyBpKyspCiAgICAgICAgcHJpbnRmKCJcdCV6dTogJXNcbiIsIGksIGxpc3RbaV0pOwp9CgppbnQgbWFpbih2b2lkKSB7CiAgICBwdXRzKCJWYXJpYW50IDE6Iik7CiAgICB0ZXN0MShsaXN0MSwgY291bnRvZihsaXN0MSkpOwogICAgcHV0cygiVmFyaWFudCAyOiIpOwogICAgdGVzdDIobGlzdDIsIGNvdW50b2YobGlzdDIpKTsKfQo=