在c中为字符串添加一个char

时间:2017-02-23 19:55:03

标签: c arrays string char cs50

我有一个名为add_to_string的函数,我从我的main函数调用它来为字符串添加一个字符

add_to_string(name[I]);

在我看来,我无法将字符串附加到字符串中。那么我该如何解决这个问题?

我在这段代码中的主要目的是打印输入的姓名首字母,避免用户输入错误(在名字和中间名之间加上两个空格)

这是我的完整代码

#include<stdio.h>
#include<cs50.h>
#include<string.h>

string add_to_string (char letter);
string result;

int main (void) 
{
    printf("pleas enter your full name:  ");
    string name = get_string();
    int len = strlen(name);
    for (int i = 0; i < len; i++)
        {
            if (i == 0) 
            {
                add_to_string(name[i]);
            } else if (name[i] == ' ')
            {
                if (name[i + 1] != ' ')
                {
                add_to_string(name[i]);
                }
            }
    }

    printf("%s\n",result);
}

string add_to_string (char letter)
{

    strncat(result, letter, 30);
    return result;
}

0 个答案:

没有答案