Trên Solaris,
tên cơ sở
#include <stdio.h>
#include <libgen.h>
int main(int argc, char* argv[])
{
int len = strlen(argv[0]);
char *bsname = basename(argv[0]);
printf("%s\n", bsname);
printf("%d\n", len);
return 0;
}
cc basename.c
ldd a.out
đầu ra
libc.so.1 => /lib/libc.so.1
libm.so.1
......
Trên Linux,
tên cơ sở
#include <stdio.h>
#include <libgen.h>
int main(int argc, char* argv[])
{
int len = strlen(argv[0]);
char *bsname = basename(argv[0]);
printf("%s\n", bsname);
printf("%d\n", len);
return 0;
}
gcc basename.c
ldd a.out
đầu ra
libc.so.6 => /lib/libc.so.6
......
Là Solaris libc dựa trên GNU libc? Có phải libc.so.1trên Solaris giống như libc.so.6trên Linux không?
strlcpy()trong Linux hoặc các hệ thống khác không có ảnh hưởng BSD mạnh.