99问答网
所有问题
当前搜索:
c语言输入字符串以什么结束
C语言
字符串
编程
输入字符结束
时赋值'\0'
答:
这是因为字符串是以‘\0'做为结束标志的
。在内存中,比如字符串,“abc",实际上是四个字节的空间abc'\0'。在你的程序中:while((s[i]=getchar())!='\n')i++;s[i]='\0';前面的while只是得到了字符串的字符,而没有结束标志。如果没有最后一句s[i]='\0';你的字符就不能正确结束。
c语言输入字符串结束
的标志?
答:
C语言中字符串的结束标志是【''】
。C语言中没有专门的字符串变量,通常用一个字符数组来存放一个字符串,字符串总是以【''】作为结束符。''就是8位的00000000,因为字符类型中并没有对应的这个字符,所以这么写。''就是字符串结束标志。''是转译字符,意思是告诉编译器,这不是字符0,而是空字符。
...这几个字符怎么区别啊?那个是
字符串结束字符
?
答:
你说的问题出现在输入函数上。
因为用scanf()输入时,默认用空格作为输入分隔符。所以,当用scanf输入字符串时,碰到空格,就停止读入
。因此,它不能用于含有空格的字符串的输入。用gets()输入时,就不存在这个问题,它把回车前的所有字符(包括空格)都作为字符串的内容了。使用时要特别注意这一点。
c语言输入字符串
用
逗号分开
答:
思路为用getchar逐个读入字符,并赋值到字符串对应位置,当出现逗号时结束
。然后再用scanf读入数字。代码如下:include <stdio.h>int main(){char s[100];int v;int i = 0;while(1){s[i] = getchar();//逐个输入字符并赋值到字符串中。if(s[i] == ',')//输入结束。{s[i] = '\...
C语言
的
字符串
为
什么以
0作为它的
结尾
?
答:
在C语言中没有专门的字符串变量,通常用一个字符数组来存放一个字符串。
字符串总是以'\0'作为串的结束符
。因此当把一个字符串存入一个数组时,也把结束符 '\0'存入数组,并以此作为该字符串是否结束的标志。有了'\0'标志后,就不必再用字符数组的长度来判断字符串的长度了。
C语言 输入字符串以
#
结束
,对字符串中的数字字符求和输出。
答:
/*
C语言 输入字符串以
#
结束
,对字符串中的数字字符求和输出。如输入a37b6#,输出16。/ void main(){ char ch[80];int i;int n=0;char *p;printf("请输入一个字符串,以#
结尾
:");scanf("%s",ch);for(p=ch;(*p)!='#' && (*p)!='\0';p++)if((*p)>='0' && (*p)<='9'...
c语言
·
字符串结束
标志
答:
在
C语言
操作字符串时,从首字符开始逐个扫描,遇到'\0'即判定为
字符串结束
。'\0'的存在至关重要,没有它,字符串就永无尽头。由" "包围的字符串在最后自动添加'\0',比如"abc123"看似包含6个字符,实则隐含一个'\0',这个过程在后台执行,我们无法察觉。以下图示"C program"在内存中的存储情况...
关于
C语言输入字符串
?
答:
scanf读取
字符串
时,遇到空格、制表符、回车,就
结束
读取。因此,如果是scanf("%s",string);则得到的字符串是I,由于I后面有空格,不再继续读取。要想读取整个字符串,要用到gets,格式为gets(string);选D
在c++中gets(a)是
什么
意思?
答:
c语言
里gets(a) 表示输入一个字符串到数组a,a表示读取一个字符串存入a中,
字符串输入结束
标志为换行符。比如 输入321 cs dd回车 a中存储为 321 cs dd
在
C语言
中,
字符串以什么
作为结素标志?
答:
为了测定字符串的实际长度,
C语言
规定了一个“
字符串结束
标志”,
以字符
'/0'代表。如果有一个字符串,其中第10个字符为'/0',则此字符串的有效字符为9个。也就是说,在遇到字符'/0'时,表示字符串结束,由它前面的字符组成字符串。系统对字符串常量也自动加一个'/0'作为结束符。例如"C Program...
1
2
3
4
5
6
7
8
9
10
涓嬩竴椤
灏鹃〉
其他人还搜
c语言输入字符串以井号结束
c语言字符串的结束符是什么
c语言字符串结尾的字符
C语言怎么读入字符串以0结束
字符串结尾是什么字符
c语言中字符串结束标志是
C语言字符串结尾
字符串以\0标志字符串的结束
字符串结束的标志为