#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int safe_strcpy(char *dest, size_t dest_size, const char *src) {
if (dest == NULL || src == NULL || dest_size == 0) {
return -1; // 错误处理
}
snprintf(dest, dest_size, "%s", src);
return 0;
}
int main() {
char src[] = "Hello, World!";
char dest[10];
if (safe_strcpy(dest, sizeof(dest), src) != 0) {
printf("Copy failed!\n");
} else {
printf("Copied: %s\n", dest); // 输出: Copied: Hello, W
}
return 0;
}
|