变量C String string.h用法

时间:2013-11-23 13:47:32

标签: c string variables c-strings

您好我刚开始使用c和string.h(strings.h?)而且我找不到很多关于它的教程,所以对我来说有些问题仍然存在:

所以直到现在我正在使用

char name[10];

例如,有没有办法像

一样使用
string name

将变量作为字符串?

最后我想要像

这样的东西
int main (){
    string name;

    puts("name?");
    scanf("%s",name);
    printf("%s",filname);

}

7 个答案:

答案 0 :(得分:1)

C

中没有像字符串那样的东西

你可以做的最好的声明字符串是这样的:

char greeting[] = "Hello";

或者像这样:

char greeting[6] = {'H', 'e', 'l', 'l', 'o', '\0'};

查看此tutorial

  

C编程语言中的字符串实际上是一维的   由空字符'\ 0'终止的字符数组。从而   以null结尾的字符串包含组成的字符   string后跟一个null。

答案 1 :(得分:1)

C中没有字符串。本质上,C字符串只是一个字符数组。 您可以使用char*这是一个指向char变量的指针。我不知道你对C指针有多了解,但当你做了类似的事情时 int a[10] 这是一个数组声明,指向整数的指针保存在变量a中。因此,如果使用char*作为指向char的指针,那么在chars中它是相同的,你有一个没有默认大小的char数组。但是在使用指针时要小心,你可能会遇到很多运行时错误,所以在编写涉及指针的代码时要小心。

答案 2 :(得分:0)

不,C中没有动态分配的字符串类型。如果需要,有数百个提供此类字符串类的库,但对于像scanf这样的标准库函数,您需要弄清楚提前的最大尺寸(或采用较低级别的功能)。

答案 3 :(得分:0)

c中没有称为字符串的数据类型。字符数组是一个字符串,您可以按如下方式使用它。

char s[10];
scanf("%s",s);
printf(s);

你会发现这些函数很有用,它们都在string.h下。

strlen(s)给出字符串长度

strcat(s1,s2)将s2连接或连接到s1

strcpy(s1,s2)将s2复制到s1

答案 4 :(得分:0)

看一下字符串引用(c ++):

http://www.cplusplus.com/reference/string/string/

答案 5 :(得分:0)

C没有类,std :: string是c ++中的一个类,你可以访问所有的c-string函数The C String Library

答案 6 :(得分:0)

不能用

来做
 #include <string.h>