llgd.net
相关文档
当前位置:首页 >> n=n*8+*p%'0';这句是什么意思 >>

n=n*8+*p%'0';这句是什么意思

*p-'0'就是将字符变成数字,例如123 当 p指向1的时候,*p = '1' ,而‘1’-‘0’就是两者之间的ASCII码进行相减, 结果就是1了。 所以n = 0*8+1=1 n=1*8+2=10 n=10*8+3=83

n*8 n就是你上面定义的n的值 这就是两个数字相乘而已 而*p-'0' 减去的0并不是数字0 而是0的ASCII值是48,所以就相当于用*p的值减去48了,即等价于 (n = n * 8 + *p - 48)

n是功率的代号,这个符号指的是功率为0.8千瓦

p指向一个二进制字符串 *p是取一位数字 字符'1'的ascii值为49 , '0'是48,所以要做'0'运算 *p - '0' 是得到相应的数值即:字符‘1’变为1 字符 '0'变为0 n的初值是0 n先乘2,即把原先的值先扩大2倍,然后,再加上相应位的值,这样就可以得到最终...

n%2=0 是错误的,没有这种写法. n%2==0 表示n对2取余数,即:如果n为2的倍数,条件if成立.

个人理解是不行。以下是仿照上面进行的更改:(纯粹个人看法) int fun(char *p) { int n; n=*p-'0'; p++; while( *p!=NULL ) { n=n*8+*p-'0'; p++; } return n; }

n=0; //初始化n=0 while(*p++!='\0') //判断八进制数的字符串是否结束,并指向下一个数字字符 n=n*8+*p-'0'; //若不结束,计算数字的十...

简单的看,就是8421码

第二句是将n右移一位之后再赋值给n。 C++是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。C++擅长面向对象程序设计的同时,还可以...

应该是打错了、、/o是不是/0埃o和0还是不一样的。。/0是结束符号,要是这样的话,那么五个字符就应该是abcde了。

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