a87*_*874 3 c string bit-manipulation
我正在尝试打印字符串的电源组.
代码编译成功,但是,执行时,屏幕上不会打印任何内容.
我无法理解这背后的原因.
以下是代码:
#include<stdio.h>
#include<string.h>
#include<math.h>
void main()
{
char s[]="abcd";
int i,j,k=1;
int y=strlen(s);
int z=pow(2,y);
for(i=0;i<z;i++)
{
k=1;
for(j=0;j<y;j++)
{
if(j & k)
printf(" %c",s[j]);
k=k<<1;
}
printf("\n");
}
}
Run Code Online (Sandbox Code Playgroud)
j & k总是评估为0.
j = 0, k = 1 ==> j & K = 0
j = 1, k = 10 ==> j & K = 0
j = 10, k = 100 ==> j & K = 0
j = 11, k = 1000 ==> j & K = 0
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
91 次 |
| 最近记录: |