如何打造高效直销团队:C语言编程:如何输入任意长度的字符串?(不用C++和String)

来源:百度文库 编辑:高校问答 时间:2024/04/30 04:42:35
如何输入任意长度的字符串?(不用C++和String类)?

每次使用都malloc申请一个空间

记得要包含stdlib.h
//for 用一个循环控制输入字符串
char *p;
p=(char *)malloc(sizeof(char));//只申请一个存放空间
p=getchar();//取得键盘输入的字符

用完记得要释放掉
free(p);

使用动态分配来解决。

使用 getch() 函数

问内存要空间,自己管理。(即动态分配)

例:(不完整代码)
#define BUFFER 512 //问内存申请空间存放字符个数

char *p;
...
p=(char *)malloc(BUFFER*sizeof(char)); //申请
... //管理使用
free(p); //释放

由于计算机内存有限,所以理论上不可能输入任意长度的字符串,除非不需要保存。
最大的长度限制为虚存大小和进程地址空间大小中较小的那个。