二维数组C中的按位|
我很长时间没用C了 我有一个2d数组,其中每个元素都是1或0。我想知道每行是否有1个。我正在这样做:二维数组C中的按位|,c,arrays,bitwise-operators,C,Arrays,Bitwise Operators,我很长时间没用C了 我有一个2d数组,其中每个元素都是1或0。我想知道每行是否有1个。我正在这样做: for (row = xa; row < 50; row++) { // need to know first if there is any '1' in the next line if (|schemaArray[row] == 1) { printf("1 found in row %d\n",row ); } } 您必须遍历该行的所有列,以
for (row = xa; row < 50; row++) {
// need to know first if there is any '1' in the next line
if (|schemaArray[row] == 1) {
printf("1 found in row %d\n",row );
}
}
您必须遍历该行的所有列,以检查是否存在
1
示例代码:
for (int row = xa; row < 50; row++ ) {
int bIsOne = 0;
for (int i = 0;i < col_size && !bIsOne; i++ ) {
bIsOne = bIsOne | schemaArray[row][i];
}
if( bIsOne )
printf("1 found in row %d\n",row );
}
在函数中,可以将位图用作:
for (int i = 0; i < row_count; i++) {
if( bitMapSchemaArray[i] )
printf("There is a 1 in %d row\n", i+1);
}
for(int i=0;i|
但是,假设我们使用的是64位整数数组,那么在
2-D
数组中最多只能有64列。当然,您也可以通过使用ceil(column\u count)/64
64位整数来推断它有超过64列。在这种情况下,按位或每列检查累积结果是否仍然为非零。您必须迭代该行的所有列以检查是否存在1
示例代码:
for (int row = xa; row < 50; row++ ) {
int bIsOne = 0;
for (int i = 0;i < col_size && !bIsOne; i++ ) {
bIsOne = bIsOne | schemaArray[row][i];
}
if( bIsOne )
printf("1 found in row %d\n",row );
}
在函数中,可以将位图用作:
for (int i = 0; i < row_count; i++) {
if( bitMapSchemaArray[i] )
printf("There is a 1 in %d row\n", i+1);
}
for(int i=0;i|
但是,假设我们使用的是64位整数数组,那么在
2-D
数组中最多只能有64列。当然,您也可以通过使用ceil(column\u count)/64
64位整数来推断它有超过64列。在这种情况下,按位或每列检查累积结果是否仍然为非零。简单只需迭代整行并找出答案
for (row = 0; row < 50; row++) {
for (col= 0; row < 50; col++) {
if (schemaArray[row][col] == 1){
printf("1 found in row %d\n",row );
break;
}
}
}
(行=0;行<50;行++){
用于(列=0;行<50;列++){
if(schemaArray[row][col]==1){
printf(“第%d行中找到了1\n行);
打破
}
}
}
简单只需在整行上迭代并找出
for (row = 0; row < 50; row++) {
for (col= 0; row < 50; col++) {
if (schemaArray[row][col] == 1){
printf("1 found in row %d\n",row );
break;
}
}
}
(行=0;行<50;行++){
用于(列=0;行<50;列++){
if(schemaArray[row][col]==1){
printf(“第%d行中找到了1\n行);
打破
}
}
}
if(| schemaArray[row]==1)条件无法编译,因此编译器会告诉您使用它是错误的。但是,它不会告诉您如何正确使用它。编译器会告诉您使用它是错误的,因为if(| schemaArray[row]==1)条件无法编译。不过,它不会告诉你如何正确使用它。