Hello guys, I want to convert decimal from dec_buffer to a bin_buffer.
Example: dec_buffer[1]=1; bin_buffer[1][12]={000000000001};
dec_buffer[2]=2; bin_buffer[2][12]={000000000010};
dec_buffer[3]=3; bin_buffer[3][12]={000000000011};and soon
The error is at "bin_buffer[buf_num] = show_binary(dec_buffer[buf_num]);" ; Error: incompatible types in assignment
I think it's a newbie question since I am a newbie on C programming, so please give me a hint :)
NB:If there's any undeclared constant, please ignore it since i didn't copy all of my code here. I copied the part with issues only.
Example: dec_buffer[1]=1; bin_buffer[1][12]={000000000001};
dec_buffer[2]=2; bin_buffer[2][12]={000000000010};
dec_buffer[3]=3; bin_buffer[3][12]={000000000011};and soon
The error is at "bin_buffer[buf_num] = show_binary(dec_buffer[buf_num]);" ; Error: incompatible types in assignment
I think it's a newbie question since I am a newbie on C programming, so please give me a hint :)
NB:If there's any undeclared constant, please ignore it since i didn't copy all of my code here. I copied the part with issues only.
Code:
#include <stdio.h>
#define BUFFER_NUM_MAX 192 //16*12
#define BIT_NUM_MAX 12 //12bit
int dec_buffer[BUFFER_NUM_MAX];
int bin_buffer[BUFFER_NUM_MAX][BIT_NUM_MAX];
int bit_num;
int buf_num;
int show_binary(int num){
int j,b[BIT_NUM_MAX]={0};
printf("data converted: %d ; binary: ",num);
for (j=1;j<=BIT_NUM_MAX;j++){
b[BIT_NUM_MAX-j]=num%2;
num=num/2;
}
for(j=0;j<BIT_NUM_MAX;j++){
printf("%d",b[j]);
}
printf("\n");
return b;
}
int main(void){
for (buf_num=1;buf_num<=BUFFER_NUM_MAX;buf_num++){
dec_buffer[buf_num] = buf_num;
bin_buffer[buf_num] = show_binary(dec_buffer[buf_num]);//Error: incompatible types in assignment
}