[新手编程训练项目]002——C语言文本合并02:不定长字符串输入函数
来源:互联网 发布:windows10 知乎 编辑:程序博客网 时间:2024/05/19 18:15
日期:2017年8月26日
来源:001项目中文本文件地址输入,减少内存浪费
思路:循环交换两列动态生成的字符串,并在每次交换后加长并释放上次申请的内存
注意:
1.若使用函数strlen()作为申请内存大小时,字符串结尾必须有'\0',这是strlen()函数算法决定的。申请的内存大小也可使用计数变量。
2.字符串函数strcpy()的使用,两参数的位置。
3.申请内存时要判断是否申请成功。
char* get_name(void)//不定长输入地址{char *name, *temp;char ch;int j = 1;name = (char*)malloc(sizeof(char)*(j + 1));if (NULL == name){exit(1);}while ((name[j - 1] = getchar()) != '\n'){j++;temp = (char*)malloc(j + 1);if (NULL == temp){exit(1);}name[j - 1] = '\0';strcpy(temp, name);free(name);name = (char*)malloc(sizeof(char)*(j + 1));if (NULL == name){exit(1);}strcpy(name, temp);free(temp);}name[j - 1] = '\0';return(name);}
阅读全文
0 0
- [新手编程训练项目]002——C语言文本合并02:不定长字符串输入函数
- [新手编程训练项目]003——C语言文本合并03:fread与fwrite函数对文本文件的读写
- [新手编程训练项目]001——C语言文本合并01
- [新手编程训练项目]006——C语言文件夹文本文件关键词检测
- [新手编程训练项目]007——C语言文本文件的含通配符的模糊单词搜索
- [新手编程训练项目]005——C语言文件夹文件信息输出002:递归输出指定文件夹中的文件信息
- 不定长字符串输入处理小技巧
- 不定长字符串输入处理小技巧
- C++输入不定长字符串方法
- [新手编程训练项目]004——C语言文件夹文件信息输出001:io库中_finddata_t结构体的使用
- c语言的不定长数组
- C语言不定长数组及初始化
- C语言不定长消息-柔性数组
- C语言K&R习题系列——使用缓冲区函数接受长字符输入
- c语言练习题——字符串训练
- C语言学习历程——Training04字符串训练02
- C语言学习历程——字符串训练02
- c语言不定参数函数
- matlab2c使用c++实现matlab函数系列教程-det函数
- k8s相关命令
- 3小时学会使用Git
- 百度搜狗神马搜索劫持 来源网站跳转 快照霸屏 竞价劫持 霸屏代码
- 人脸识别与活体检测研究-历程
- [新手编程训练项目]002——C语言文本合并02:不定长字符串输入函数
- windows 共享文件夹
- floyd算法 多源最短路径
- 给RecyclerView的item添加点击监听事件
- HTTP状态码整理
- Java中native的用法
- OpenCV 图像的遍历4种方式
- linux ioremap详解
- mybatis-动态sql语句-if用法