C-使用指针打印字符串的第一个字母

C-使用指针打印字符串的第一个字母,c,string,pointers,C,String,Pointers,我目前正在为大学做一个项目,我有以下功能,它接收一行(字符串)并将其分成单词: static const char separators[] = {' ','\t',',',';','.','?','!','"','\n',':','\0'}; void split(char *line){ char *token = strtok(line, separators); while(token!=NULL) { strtolower(token);

我目前正在为大学做一个项目,我有以下功能,它接收一行(字符串)并将其分成单词:

static const char separators[] = {' ','\t',',',';','.','?','!','"','\n',':','\0'}; 

void split(char *line){
    char *token = strtok(line, separators);
    while(token!=NULL) {
        strtolower(token);
        printf("%s \n", token);
        /* rest of code belongs here */
        token = strtok(NULL, separators);
    }
}
出于测试目的,我想打印字符串
标记的第一个字母
,但是它会打印整个字符串,每当我使用其他方法
(*标记,标记[0])
时,它会创建一个错误,指出
%s
需要类型
*char
,而不是
int

如何仅打印字符串的第一个字母,以便将来在代码中实现?

非常简单:

printf("%c\n", *token);

非常简单:

printf("%c\n", *token);


你知道除了
%s
,还有其他的
printf()格式说明符吗?你说得对,我真傻。。。我最近才开始学习C,我忘了我可以使用%C和*令牌。谢谢你应该接受@Carey Gregory的答案,因为答案是正确的。你知道除了
%s
,还有其他的
printf()
格式说明符吗?你说得对,我真傻。。。我最近才开始学习C,我忘了我可以使用%C和*令牌。谢谢您您应该接受@Carey Gregory的回答,因为它是正确的