您好我刚开始使用c和string.h(strings.h?)而且我找不到很多关于它的教程,所以对我来说有些问题仍然存在:
所以直到现在我正在使用
char name[10];
例如,有没有办法像
一样使用string name
将变量作为字符串?
最后我想要像
这样的东西int main (){
string name;
puts("name?");
scanf("%s",name);
printf("%s",filname);
}
答案 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 ++):
答案 5 :(得分:0)
C没有类,std :: string是c ++中的一个类,你可以访问所有的c-string函数The C String Library
答案 6 :(得分:0)
不能用
来做 #include <string.h>