/*
* 用动态分配内存制作一个字符串的一份拷贝。注意:调用程序应该负责检查这块
* 内存是否分配成功!这样做允许调用程序以任何它所希望的方式对错误作出反应。
*/
#include <stdlib.h> // 有关动态内存分配的函数都定义在该头文件中
#include <stdio.h> // NULL 在该头文件定义
char *strdup( char const *string ) { char *new_string;
/* 请求足够长度的内存,用于存储字符串和它的结尾NUL字节 */ new_string = malloc( strlen( string ) + 1 ); // 要学会strlen()的使用
/* 如果请求内存成功,就复制字符串 */ if( new_string != NULL ) strcpy( new_string, string );
return new_string; }
|
阅读(1742) | 评论(0) | 转发(0) |