0

我有一个指针,我使用 sprintf 将它传递给一个字符串,但是当我尝试访问字符串中的元素时,我遇到了麻烦。

我想要的是如果我有一个指向字符串的指针abcde来创建一个新字符串

seg[5]="a,b,c,d,e"

这样当我打电话时seg[0]我得到"a".

我在下面有一些代码

     char *pch5;
     char seg1[128];

     pch5=strtok(seg,",");
                                if(pch5!=NULL){
                                sprintf(seg1,"%s",pch5);
                                    printf("%s",seg1[0]);
                                }
4

2 回答 2

1

您的 printf 错误,您使用的是 %s 格式,但您想要的是 %c。

于 2012-08-16T17:19:47.403 回答
0

seg[5] 这里只保存字符串 "a,b,c",因为 strlen("a,b,c") == 5。但是如果你想要完整的字符串使用如下:

seg[] = "a,b,c,d,e";

于 2012-08-16T17:20:42.597 回答