黑马程序员技术交流社区

标题: 怎么创建多个字符串(C语言) [打印本页]

作者: WELL--V    时间: 2014-12-31 20:29
标题: 怎么创建多个字符串(C语言)
该补一下C了,求解答。
作者: 任冰冰    时间: 2014-12-31 20:38
char *a[3][4]
作者: 任冰冰    时间: 2014-12-31 20:40
char *a[3][4];
int i = 0 ;
while(i < 3)
scanf("%s",a[i++]);

作者: 15342193033    时间: 2014-12-31 21:13
用数组a[3][4]

作者: chasedream    时间: 2014-12-31 21:16
看你的需求,如果是改动字符串,用二维数组,如果不改动,可以用指针数组
作者: shicuf    时间: 2014-12-31 21:18
单纯创建多个要用循环,比如for或while
作者: chasedream    时间: 2014-12-31 21:23
chasedream 发表于 2014-12-31 21:16
看你的需求,如果是改动字符串,用二维数组,如果不改动,可以用指针数组 ...

让楼下大神给贴代码!!!:lol
作者: Koyou    时间: 2014-12-31 21:58
任冰冰 发表于 2014-12-31 20:38
char *a[3][4]

这个有问题吧。
1,字符串就是数组形式存储在内存中。
2,利用指针定义字符串,其实和一位数组赋值给指针的逻辑相符
3,char a[] = "king" ; char *p; p = a;
4,   char  *p = "king"; ("king"内存中就是用数组存了字符{“k”,“i”,“n”,"g"} )
创建多个字符串,即创建多维数组, 向 2位
1,int a[2][5] = {"king","nana"};
2,  用指针数组定义  int* k[2] = {"king","nana"};  相当于指针数组k,k[0]元素只想字符串数组 “king”(当然实际是指向第一字符k的地址),一次类推。
作者: wx_hg1q2t6v    时间: 2014-12-31 23:10
楼上大神,鉴定完毕
作者: 小平    时间: 2015-1-1 00:39
用字符串数组
作者: 任冰冰    时间: 2015-1-1 18:19
任冰冰 发表于 2014-12-31 20:40
char *a[3][4];
int i = 0 ;
while(i < 3)

笔误,是char a[3][4]
作者: 任冰冰    时间: 2015-1-1 18:20
任冰冰 发表于 2014-12-31 20:38
char *a[3][4]

可以,用链表
作者: 任冰冰    时间: 2015-1-1 18:21
Koyou 发表于 2014-12-31 21:58
这个有问题吧。
1,字符串就是数组形式存储在内存中。
2,利用指针定义字符串,其实和一位数组赋值给指针 ...

笔误 是char[3][4]
作者: 任冰冰    时间: 2015-1-1 18:23
任冰冰 发表于 2014-12-31 20:38
char *a[3][4]

可以,用链表
typedef struct CharSString{
       char *s;

}
作者: 任冰冰    时间: 2015-1-1 18:24
任冰冰 发表于 2014-12-31 20:38
char *a[3][4]

可以,用链表可以把他们连起来
typedef struct CharSString{
       char *s;
       struct CharSString *next;
}CharSString;
作者: geng555zj    时间: 2015-1-2 10:11
看你做什么用,一般情况下用数组就可以了




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2