1 #include
2 #include
3 #define MAXSIZE 100 定义MAXSIZE
4 int main()
5 {
6 int i=0; int j=0; int k=0; int t;
7 char s[100]; 定义数组S
8 char *ptr[MAXSIZE]; 定义指针数组ptr
9 //char **ptr;
10 //s=(char *)malloc(sizeof(char));
11 printf("输入字符串\n");
12 gets(s); 对数组S进行输入
13 fflush(stdin);
14 while(s[i]!='\0') 循环体,如果s数组没有结束,则继续
15 {
16 if(s[i]==' '||s[i]==','||s[i]=='.') 判断s结束条件,不是空格,逗号或者句号就继续
17 {
18 s[i]='\0'; 是的话在s[i]填入结束符\0
19 k=0;
20 t=i-1;
21 if(s[t]!='\0') 如果s[t]不结束
22 j++;
23 }
24 else
25 {
26 k++;
27 }
28 if(k==1) 如果K等于1
29 {
30 ptr[j]=&s[i]; 把指针数组第j项指向数组s的i地址
31 }
32 // printf("ptr=%s",ptr[j]);
33 printf("i++ = %d &s[i]== %s s[i]=%c ",i,&s[i],s[i]);打印s数组的第i项的地址和数值
34 printf("k = %d",k); 打印k
35 printf("\n");
36 i++;
37
38 }
39 while(j>=0) 这里是循环体,设置J>0 j-- 当j<0的时候结束
40 {
41 printf("%s ",ptr[j]); 打印指针数组第J项所指向的数值
42 j--;
43 }
44 printf("\n");
45 printf("LEN=%d",strlen(ptr)); 打印指针数组的长度,这里你好像烧掉用了一个头文件string.h
46 getchar();
47 return 0;
48 }
我手上没有编译器,都是靠眼睛看的 例子太费脑子了,只能把注释给你