/*C语言字符串常用的api
输出字符串
puts();
printf(“%s”,p);
获取字符串
scanf(“%s”,p);
gets();——原型chargets(charstr);
*/
#include
#include
int main()
{
char *p = "gebilaowang";
char str[128] = {'\0'};
puts(p);
printf("%s\n",p);
puts("请输入字符串");
scanf("%s",str);
puts(str);
return 0;
}
assert(断言)用法
与if用法一样,如果其值为假(即为0),那么它先向stderr打印一条出错信息,然后通过调用abort来终止程序运行
使用assert的缺点是,频繁使用会极大影响程序的性能,增加额外的开销
断言需要添加的头文件:#include
自己实现字符串的拷贝
#include
char* myStrcpy2(char *des, char *src)
{
if(des == NULL || src == NULL){
return NULL; //assert(des!=NULL&&src!=NULL);
}
char *bak = des;//备份地址保存目标地址
while( *src != '\0'){
//*des = *src;
*des++ = *src++;//des++;
} //src++;
*des = '\0';
return bak;
}
int main()
{
char str[128] = {'\0'};
char *p = "gebilaowang";
myStrcpy(str,p);//拷贝p到str
puts(str);
return 0;
}