谁能给我讲讲C语言中字符串是怎么定义的?自己看书不理解.

作者&投稿:谷震 (若有异议请与网页底部的电邮联系)
谁能给我讲讲C语言中的枚举是什么意思啊!~

你说的是C枚举类型吧。枚举是一个被命名的整型常数的集合。
枚举的说明与结构和联合相似, 其形式为: enum 枚举名{ 枚举值表 }枚举变量;
如果枚举没有初始化, 即省掉"=整型常数"时, 则从第一个标识符开始, 顺次赋给标识符0, 1, 2, ...。但当枚举中的某个成员赋值后, 其后的成员按依次加1的规则确定其值。
注意:
1.初始化时可以赋负数, 以后的标识符仍依次加1。
2.枚举变量只能取枚举说明结构中的某个标识符常量。
3.枚举值是常量,不是变量。不能在程序中用赋值语句再对它赋值。不能进行自增,自减运算
4.只能把枚举值赋予枚举变量,不能把元素的数值直接赋予枚举变量。
5.枚举元素不是字符常量也不是字符串常量,使用时不要加单、双引号。

1、定义变量字符串。
char str[200];
定义一个长度最大为200字符的字符串。
2、定义常量字符串。
由于常量字符串存储在常量空间中,所以只需要定义一个指针,指向该地址即可。如char *s = "test string"。

拓展资料c语言:
C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。
二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制定了一套完整的美国国家标准语法,称为ANSI C,作为C语言最初的标准。
目前2011年12月8日,国际标准化组织(ISO)和国际电工委员会(IEC)发布的C11标准是C语言的第三个官方标准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字标识符,一定程度上实现了汉字编程。

字符串定义其实很简单在c/c++语言中定义一个字符串可以使用如下的语法:

char *s1=“string1”;//定义字符串常量,指针形式

char s2[]=“string2”;//定义字符串常量,数组形式

char *s3=new char[10];//定义字符串变量并分配内存 指针形式

strcpy(s3,"string3");//为s3赋值

char s4[10];//定义字符串变量,数组形式

strcpy(s4,"string4");//为s4赋值

以上四种方法都能定义一个字符串,同时通过字符串在内存中的分布可以清楚地知道是什么情况



字符串可以看成就是一个字符类型的数组。
我想整型的数组你应该理解,如:int ai[10]; 就是定义一个数组变量,其名称为ai,它的容量为10,即ai数组变量中,可以存放10个整型数据。

当变量类型为char时,这样的数组就叫作字符数组,如:char ac[12]; 其名称为ac,它的容量为12,即ac数组变量中,可以存放12个字符型数据。

但是我们一般情况下,很少真正的应用字符数组,而是将之当作一个字符串来使用!
字符串与字符型数组的唯一区别就是:字符串中存放的有效数据最大为容量数-1,因为,系统规定,对于字符串,一定要有一个结束标志,这个标志为字符'\0',其ASCII值为0。
系统根据这个标志来判断字符串的长度。
如:上边定义的char ac[12],最多只能存放11个字符。
strcpy( ac , "hello" ); //这里,按数组来看,就是:
ac[0]='h'
ac[1]='e'
ac[2]='l'
ac[3]='l'
ac[4]='o'
ac[5]='\0'

以双引号引起来的一串字符叫作字符串常量,其占空间大小为可见字符个数+1,加的1就是指'\0'的存放位置, 其长度就是可见字符个数。

根据以上简单提示再看看书,理解一下吧。

枚举的主要目的,我觉得就是使代码的可读性更好。如果没有枚举,其所要实现的功能也可以通过其它方式实现。
enum 枚举名{枚举值1,枚举值2,枚举值3,.....}
枚举值本身就是一个符号,但是它又有一个int值的属性。可以看看书,就不多说了。枚举值就是一些命名,通过其命名就能知道其真正的意义。

比如一个扑克牌花色的枚举类型
enum color{heart,spade,diamond,club}
你也可以自己默认用0表示heart,1表示spade,2表示diamond,3表示club。在判断花色时,
if(color==0)....
else if(color==1)....
else if(color==2)...
else...
这样,阅读性很差,你根本无法通过这些数字判断出来时什么花色,可能要开相关的文档。非常不利于排查错误和后期的维护。

你也可以使用define定义
#define heart 0
#define spade 1
#define diamond 2
#define club 3
但是这么多个define明显是不必要的,enum就不让你写这么多define了

访问枚举变量就用枚举名.枚举值
这样在程序的其它地方出现color.heart 时,你可以很清楚是牌的花色是红桃


请问在C语言中分数怎么表示啊,即10\/9
首先10\/9是表达式,但是在C语言中没有表示分数的形式,也就是当要以这种形式给出的时候C已经帮运算出结果了。所以你可以选择两种表达方式。1、使用字符串,在使用使用时在转化一下。2、使用小数,就是1.1111...这种,申请一个Double型来储存。字符串就是 10\/9 这种 char fenshu[]="10\/9";...

C语言中的for语句和n++、++i 语句
n++这种形式是后缀自增1运算,表示先使用n值,然后n=n+1自增1 ++i这种形式是前缀自增1运算,表示先对i进行i=i+1自增1,然后再使用i值 如果是单独执行这样的语句,两者没有区别,如:for( i=0; i<10; ++i ) printf("i=%d\\n", i );\/\/输出0-9与for( n=0; n<10; n++ ) ...

C语言的特点有哪些?
C语言是一个有结构化程序设计、具有变量作用域以及递归功能的过程式语言。C语言传递参数均是以值传递,另外也可以传递指针。不同的变量类型可以用结构体组合在一起。只有32个保留字,使变量、函数命名有更多弹性。部份的变量类型可以转换,例如整型和字符型变量。通过指针,C语言可以容易的对存储器进行低级...

C程序原码反码补码怎么回事,谁能给我讲讲,好凌乱..
1)原码表示 原码表示法是机器数的一种简单的表示法。其符号位用0表示正号,用:表示负号,数值一般用二进制形式表示。设有一数为x,则原码表示可记作[x]原。例如,X1= +1010110 X2= 一1001010 其原码记作:[X1]原=[+1010110]原=01010110 [X2]原=[-1001010]原=11001010 在原码表示法...

c++中的% c表示什么意思
所以我首先要弄清楚基本的运算符号如+,-,\/,*,%,&,!=等的意思,至于乘法运算,c语言里没有×这个符号,而是用了*,对于除法,没有÷这个符号,用了\/,例如5*3就是15,6\/3就是2 像a=a+1,就是把a+1赋值给了a,我们可以简便写法那就是a+=1.同理a-=1其实就是a=a-1.a\/=5就是a=a...

c语言中, 英文字母的大小写的转换,请给我详细讲解一下,(以下下面这个...
虽然我不是很明白你具体想说什么,但是我可以给你解释一下C语言中大小写转换主要就是利用ASCII代码中,大小写相差32的原理,其程序为:include<stdio.h> int main(){ char c1,c2; \/\/ 定义两个字符c1,c2 c1=getchar(); \/\/从键盘输入一个大写字母,放在c1 printf("%c,%d\\n",c1,c1)...

...用if。中间的几个if语句看不懂,能给我讲讲吗?
第一个if,作用是:如果a>b,就借用tem变量,把a 和b的值交换一下。确保交换之后a不大于b。第二个if,执行后,把a与c中较小的数放在a中,即a不大于c。第三个if,确保了a不大于d。通过运行前三个if语句,把abcd四个数中最小的数字放在了变量a中。同样,第四和第五个if语句,把bcd三个数...

C语言中 "\\" 的作用是什么?
印度的程序设计课程采用“事件驱动式”教学,我认为在中国的c语言程序设计教学中应该采用“项目驱动式”教学。“项目驱动式”教学就是以项目为目的,以c语言理论教学为过程,最终能用c语言设计项目,实现项目的要求。“项目驱动式”教学的关键在于培养学生“如何做什么”和“可以干什么”。一个项目就是一个工程,在“...

C语言主要讲的是什么?
C语言是一种计算机程序设计语言,在学习c语言时通常学习基本的数据类型、运算符与输入输出函数以及语句、数组、字符串、函数、指针、结构体等,i经过这些零散的知识串联,就可以编写所需要的c语言程序

关于c语言的一个程序,谁能给我讲一下
这是个申请二维数组空间,并相应赋值函数。如一个二维数组:0:3 5 7 1:8 2 9 。。。第一次是申请指向0,1..的指针地址h个,第二次是申请指向所有数据的空间h*w个;后面是对这个数组进行初始化;数组空间的申请,1.申请一维空间;2,在一维的空间基础上申请二维的空间;3,多维的依次申请。。

察隅县15323901898: 在c语言中 字符串如何去定义?有几种定义方法 -
弘傅可维: 需要准备的材料分别有:电脑、C语言编译器.1、首先,打开C语言编译器,新建一个初始.cpp文件,例如:test.cpp.2、在test.cpp文件中,输入C语言代码:char a[10] = "hello"; char b[] = "hello"; char *c = "hello"; printf("%s%s%s", a, b, c);3、编译器运行test.cpp文件,此时通过所有3种定义字符串的方法成功定义被输出.

察隅县15323901898: C语言中如何定义一个字符串呀 -
弘傅可维: 这样定义,char a[5][]={"张三", "李四", "王二", "小明", "小红"}; 也不能使用b='张三' 在C语言中是没有字符串这种类型的,都是同过数组来进行操作的,即char型的数组

察隅县15323901898: c语言中如何定义字符串,是用二维数组实现的吗 -
弘傅可维: 一维和二维的都可以; 一维的情况如下: 1,char string0[10]; 2,char string1[]="prison break"; 3,char string2[100]="michael scofield"; 1句表示定义个长度为10的字符串,但未赋值,2句表示定义了一个字符数组string1,并进行初始化,使得其...

察隅县15323901898: c语言中,怎么样定义一个字符串变量 -
弘傅可维: 1、定义变量字符串. char str[200]; 定义一个长度最大为200字符的字符串. 2、定义常量字符串. 由于常量字符串存储在常量空间中,所以只需要定义一个指针,指向该地址即可.如char *s = "test string". 拓展资料 c语言:C语言是一...

察隅县15323901898: C语言里字符串数组应该怎么定义 -
弘傅可维: C语言并没有字符串这样的类型 是用字符数组存的. 于是 字符串数组 其实就是二维字符数组 比如 char s[10][100]; 表示10个字符串, 每个最长100个字节.

察隅县15323901898: C语言里怎么定义字符串变量? -
弘傅可维: 在C里边是没有字符串变量的.建议用字符数组来实现所需要的操作.

察隅县15323901898: C语言如何定义字符串,其个数和长度均为变化的 -
弘傅可维: 简单方法是:#defined N ---......char s[N][80]; 这样直接在宏定义中更改N的值就好了.能力高的可以用链表实现.

察隅县15323901898: 在C语言中怎么输入一个字符串 -
弘傅可维: 在c语言中存储一个字符串,一般有两种方法,一种是字符指针,一种是使用字符数组.比如: const char *str = "hello"; //使用字符串指针 const char str[] = "hello"; //使用字符数组 如果保存的字符串,需要修改.一般使用字符数组.比如: char path[256] = "c:\\windows\\"; strcat(path, "system32");

察隅县15323901898: 超简单的C语言问题,怎么定义字符串? -
弘傅可维: 把声明中的返回值char去掉就行了,如下:Enmonth(int m); #include<stdio.h>void main()//输入月份,输出相应的英文名称 { int month;scanf("%d",&month); if(month>=1&&month<=12) Enmonth(month); }Enmonth(int m) { char *months[12...

察隅县15323901898: C语言中什么是字符串 -
弘傅可维: 多个字符为字符串,如"a"为一个字符,"abc"为字符串. 百度百科有更详细的说明.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网