wxsh.net
当前位置:首页>>关于在c语言中s[0]-'0是什么意思?的资料>>

在c语言中s[0]-'0是什么意思?

首先纠正一下,应该是s[0] - '0' (少了单引号) s[0] - '0' // 表示将字符s[0]的ASCII码与字符0的ASCII码相减,如果s[0]是字符0~9,则表示将该字符变为对应的数字(int型) 比如: char s[3] = "123";printf("%d\n", s[0]-'0'); // 输出1,将字...

判断 字符串s在第i(i+1)个字符处 是否结束~ 这里'\0'在C语言中 标示一个字符串的结束,是很重要的概念

s[i] != '\0'用来判断字符s[i]是否是字符数组s中的结束字节'\0' 可以用来完成对字符数组或字符串的一系列操作,如计算字符个数等。 下面举例来说明其用法: char s[] = "abcdefg"; // 定义一个字符数组,且初始化为"abcdefg"int i=0;while(s[i] ...

在*(s+i) != '\0'这个表达式中,s为char *类型的指针,或一维数组的数组名。 i为整数数值。当然,也可能是反过来,i为char *, s为int。 不过在C语言的命名时,将s定义为字符串(string), i定义为整型(int)是常用的做法。 于是这里,*(s+i)就是取s...

估计是这样:s是指向结构体的指针,结构体包含了一个整型数组i[x],这条语句就是把十六进制的39赋给s所指结构体的i数组的第一个变量。十六进制的39换成我们常用的十进制是: 3*16^1+9*16^0 = 57

这句话应该是从字符串中提取数字的 如字符串形式的123变成int型的123 s[i]-'0'这个就是把字符形式的数字变成int型的数字

没写全吧,是不是这个: s=s*2+a[k]-'0'; 如果是这个,意思就是: 将s赋值为: 2倍s的值,再加上数组成员a[k]的值,再减去字符'0'的ASCII码值

a是数据结构名,a[0]指的是第一个,s是这个数据结构的一个成员

在c语言中&表示取地址运算符 &s[0].name表示s[0]的name成员的地址,s[0].name表示是s[0]的name成员。 根据你的描述,name成员应该属于字符串,而C语言中规定,字符串的串名就是其首地址,所以s[0].name就是地址,&s[0].name反而就错了。

'\0' 是 C 语言字符串约定的结束符,printf()、strlen() 等函数看到 '\0' 就知道这个字符串结束了。 gets() 函数也会按照 C 语言的约定在读取的字符末尾加上一个 '\0',所以程序中 for() 的测试部分可以用 s[i] != '\0' 来判断字符串还没结束。 ...

网站首页 | 网站地图
All rights reserved Powered by www.wxsh.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com