转自http://apps.hi.baidu.com/share/detail/35615256
一直以来对这个问题都不是很清楚:只是知道C语言里有<string.h>这个头文件,所以就想当然的认为C语言里有string这个 类型,可以通过下面这种形式来声明string的变量 string aString; 后来编程时发现通不过编译,又查资料才知道原来C语言里压根就没有string这个类型,所以字符串都是通过char数组来存储的, 而<string.h>这个头文件里声明的函数原型也全是针对char数组的种种操作。直到C++中才出现了string这个类(注意是类, 不是类型)。这是网上我找到的比较满意的答复:
" C语言中有string类型变量吗"
这里的 string 有 二 义性。
(1) 如果 string 是普通词汇,“C语言中有字符类型变量吗”, 答,有。 字符类型 用 char 声明。
char str[]="This is a string";
(2) 如果 string 是专用词汇,“C语言中有string类型变量吗”,答,没有。string 是 类,是 class, 不是 类型,不是 type.
类 的 声明 用 构造函数初始化,或 new 声明。
类 -- C++, 不是 C
转自http://apps.hi.baidu.com/share/detail/35615256一直以来对这个问题都不是很清楚:只是知道C语言里有这个头文件,所以就想当然的认为C语言里有string这个 类型,可以通过下面这种形式来声明string的变量 string aString; 后来编程时发现通不过编译,又查资料才知道原来C语言里压根就没有string这个类型,所以字符串都是通
C语言
中没有
string
类型
。
string
类型
是 C++、java、VB等编程语言中的。 在java、C#中,
String
类是不可变的,对
String
类的任何改变,都是返回一个新的
String
类对象。
string
是C++标准程序库中的一个头文件,定义了C++标准中的字符串的基本模板类std::basic_
string
及相关的模板类实例。
而在
C语言
中,
C语言
中没有字符串
类型
,字符串是存放在字符型数组中的,将字符串作为字符数组来处理的。为了测定字符串的实际长度,
C语言
规定了一个“字符串结束标志”,以字符’
##
C语言
中没有
string
类型
##
#include<stdio.h> #include<stdlib.h> int main(int argc, char *argv[]) { char c[][5] = {"abc","haha","no"}; for (int i=0; i<3; i++) { printf("%s\n",c[i]); } return 0; }
一直以来对这个问题都不是很清楚:只是知道
C语言
里有<
string
.h这个头文件,所以就想当然的认为C语
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文件
STRING
.H
C语言
头文
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
STRING
C语言
头文件
在
C语言
中,
string
是指一个字符数组,用于存储一串字符。字符串以空字符'\0'结尾,因此在定义字符串时需要预留一个字符用于存储空字符。例如,定义一个包含"Hello World"的字符串可以这样写:
char str[] = "Hello World";
注意,字符串在
C语言
中是一种特殊的数组,因此可以使用数组的方式来访问字符串中的每个字符。