-
<>8^n*(*p)+.这是一个异或运算。
p-'0'即 p 所指的当前字符号的数值,分配给 i 以制作计数器。
阵列 A 将一个添加到应用于备份的元素中。
n=n*8+*p-'0'它是假设输入的八进制。
值为'123',第一个 *p-'0'取出 1 的值,暂时看作一位数的八进制,所以它是 1,第二个 *p-'0'取出值 2,暂时看作两位数的八进制,在 1 的脊柱秩上加一位 (1*8+2),然后 *p-'0'取出 2 的值,暂时看作三位数的八进制,在 1 和 2 的行中各加一个 (1*8+2)*8+3,即 1*8*8+2*8+3
在那之后(依此类推)。
遇到的指针'\0'结束循环。
ps:如果要把 8 的形式写成 n 次方 * (*p),应该在数学库中调用 pow(8,n)8 的 n 次方,并且需要侧渗透两个指针来确定 n 的大小,一个指向第一个地址,一个指向最后一个地址, 第一个地址递增,最后一个地址不移动。
8 n*(*p)(以及 ** 的表达式)应该是 Python 等语言,而 C 语言不支持这样的写作)})
-
从高到低,逐个循环逐个......
例如,输入一个字符串"321"并将其作为参数传递。
首先,指针指向一个字符'3'首先,我们必须将 ASCII 代码转换为数值,使用'3'减去'0'Kiriyu 的值为 3。
接下来,指针向后移动一个位置以指向字符'刀锋连衣裙 2'。还会提取值 2。 由于前 3 比前一个阶高,因此 3 8 = 24,加上当前阶的 2,24+2 = 26。
接下来,指针向后移动一个位置以指向字符'1'。提取值 1。 由于前一个 26 比前一个阶高,因此 26 8 = 208,加上当前阶的 1,208 + 1 = 209。
接下来,将指针向后移动一个位置以指向字符串终止符并退出循环体。
-
使用“除以 2 并反向取余数”的方法将十进制值 7 转换为二进制。
每次从下往上读取余数是转换的结果:
-
十进制数 7 表示为二进制数 111,即 7(十进制)= 111(二进制)。
二进制是莱布尼茨发现的,是数学和数值电路中基于 2 的算术系统,也是表示基于 2 的系统的二进制系统。 在这个系统中,它通常用两个不同的符号表示:0(代表零)和 1(代表 1)。
二进制运算: 加法:二进制加法有四种情况:
0+0=0,0+1=1,1+0=1,1+1=10(0四舍五入为1)。 乘法:二进制乘法有四种情况:
0×0=0,1×0=0,0×1=0,1×1=1。减法:二进制减法有四种情况:
0-0=0,1-0=1,1-1=0,0-1=1。除法:二进制除法有两种情况(除数只能为1):
-
111 是二进制,十进制是 7
-
除了七个反余数。 78 7 = 11 余数 1
11 7 = 1 盈余状态 4
1 7 = 0 大于 1
余数按相反的顺序排列,得到 141
-
#include
void main()
printf("%d",re);输出转换后的结果。