C语言有字符串这种数据类型吗?

我会JAVA,最近想学C语言,但发现C语言好像没有字符串这种种类型,请问如果定义字符串呢?不可以C语言中不使用字符串吧。

C语言有字符串这种数据类型。

    C/C++语言 用 char 数组 存放 字符串。

    例如: 

    char str[]="abcd 1234";
    char *ss = "1234 XYZ";
    printf("%s\n%s\n",str,ss);

    C++ 有 string 类 (class) ,  术语 “类” 不是 术语“类型”。java 学了 string 类。例如 :

#include <iostream>
#include <string>
using namespace std;
int main ()
{
  string str1, str2, str3;
  str1 = "Test string: ";   // c-string
  str2 = 'x';               // single character
  str3 = str1 + str2;       // string
  cout << str3  << endl;
  return 0;
}

C/C++还可以自己定义类型,例如:

#include <stdio.h>
typedef char Jv_str[100];
main(){
Jv_str s;
printf("enter a string\n");
gets(s);
printf("the string is: %s\n",s);
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-11-28
JAVA 语言 是向 C/C++ 学习后 搞出来的一种语言,原说,不需变化就可用于一切平台,后来成了神话。
C/C++语言 用 char 数组 存放 字符串。
例如:
char str[]="abcd 1234";
char *ss = "1234 XYZ";
printf("%s\n%s\n",str,ss);

C++ 有 string 类 (class) , 术语 “类” 不是 术语“类型”。java 学了 string 类。
// 例如 string assigning
#include <iostream>
#include <string>
using namespace std;
int main ()
{
string str1, str2, str3;
str1 = "Test string: "; // c-string
str2 = 'x'; // single character
str3 = str1 + str2; // string
cout << str3 << endl;
return 0;
}

C/C++还可以自己定义类型,例如:
#include <stdio.h>
typedef char Jv_str[100];
main(){
Jv_str s;
printf("enter a string\n");
gets(s);
printf("the string is: %s\n",s);
}
上面
typedef char Jv_str[100]; 定义了新类型Jv_str 。
Jv_str s; -- 变量声明,s 是 Jv_str 类型。等于声明了 char s[100];本回答被提问者采纳
第2个回答  2011-05-25
C语言中的字符串使用字符数组或者字符型指针变量进行存储
可以:1.char str[20];
2.char *str;
这两种定义方式都可以,如果输入可以直接用scanf("%s",str);注意,字符数组名在输入时不用&了,不知道我的答案满意么?
第3个回答  2019-01-14
C语言没有string类型也不存在string变量,不过C++和JAVA中有string类型
第4个回答  2011-05-25
C语言没有,要用字符数组;不过C++有字符串类型。
相似回答