新手问题:为什么我不能让printf
按原样输出二进制数,而不是转换它?
int gpa = 01011001;
printf("pure: %i \n", gpa);
给出输出:266753
如何输出01011001或仅输出1011001?
答案 0 :(得分:2)
PreparedStatement addMedicationStm = con.prepareStatement("INSERT INTO "
+ "yourtableName "
+ "(column1Name, column2Name,...) "
+ "VALUES (?,?,...)", Statement.RETURN_GENERATED_KEYS);
保持八进制数。 0
的十进制等值为01011001
。删除前面的266753
以打印原样。
答案 1 :(得分:0)
C不支持二进制常量(尽管单个编译器可能作为扩展)。
您可以使用十六进制表示法:
int gpa = 0x59; // 01011001 binary
printf( " pure: %02x\n", gpa );
如果要以二进制格式显示值,则必须滚动自己的输出函数。