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.1
trên Solaris giống như libc.so.6
trê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.