当前位置: 代码迷 >> C语言 >> 怎么读入一个未知长度的字符串
  详细解决方案

怎么读入一个未知长度的字符串

热度:251   发布时间:2007-10-15 18:55:26.0
怎么读入一个未知长度的字符串
怎么读入一个未知长度的字符串,除了定义一个很长的字符数组那种方法。
知道的请帮助一下!
搜索更多相关的解决方案: 字符  长度  定义  

----------------解决方案--------------------------------------------------------

<怎么建立一个预先不知道字节长度的数组>这个帖应该是lz的朋友发的吧...

用链表的形式就ok了





----------------解决方案--------------------------------------------------------
回复:(鸿工作室)
可能是我学校的,最近学校在举行C语言比赛。谢了
----------------解决方案--------------------------------------------------------
用指针啊!!!!!!!!!!!!
char *p=NULL;
printf ("insert:");
scanf("%s",p);
----------------解决方案--------------------------------------------------------
有一定几率回造成非法操作,特别是在不知道要用多少内存的情况下
----------------解决方案--------------------------------------------------------
回复:(crazyboy216)用指针啊!!!!!!!!!!!!char *p=N...
好像不行,呵呵,我是用的单链表,但还是谢谢了!!
----------------解决方案--------------------------------------------------------
不是吧!我就用过指针做过.
在不char *p;
p=(char *)malloc(SIZE);//SIZE自己定义
看可以不,指针没理由不可以的

----------------解决方案--------------------------------------------------------
回复:(crazyboy216)不是吧!我就用过指针做过.在不c...
呵呵,用SIZE的话,我倒不如用字符数组更简单,题目要的就是不能出现长度的定义,避免空间的溢出。
----------------解决方案--------------------------------------------------------

lz把题目贴出来,让大家看一看嘛






----------------解决方案--------------------------------------------------------

写这样的一个程序,它要求我们输入一个字符串,,然后程序对我们输入的数进行统计.比如说我们输入584515871 则输出
5 3 (表示有3个5)

8 2 (表示有2个8)

4 1 ( 表示有1个4)

1 2 (表示哟2个1)

7 1 ( 表示有1个7)

例如:

输入:

564hghsdfhgds56436gs

输出:

5 : 2

6 : 3

4 : 2

h : 3

g : 3

s : 3

d : 3

f : 1

3 : 1

注:此题要求只有一个读取字符串的语句,并且测试的字符串大小未知(未知代表可能没有,可能成千上百至百万,以下同);输出格式可以按自己认为美观的方式输出,只要结果正确,他人容易理解就可以。

不要到处传哈,就在这里看看就行了。我怕被学校的人知道了就不好了


----------------解决方案--------------------------------------------------------
  相关解决方案