
c/c++
心生百态
不会打乒乓球的程序猿不是好码农。
展开
-
求整数二进制表示中1的个数,三种算法
void bitcount(int x) { printf("%d ",x); int i = 0; while(x) { x &= x-1; i++; } printf("%d\n",i); } void bitcount2(int x) { printf("%d ",x); int i = 0; while(x) {原创 2014-10-21 17:28:50 · 584 阅读 · 0 评论 -
c语言实现不同类型数组的print(union + flag)
#include #include #include union ArrayType { int *d; double *lf; char *c;};enum DATATYPE { CHAR = 'c', DOUBLE = 'l', INT = 'd'};struct ArrayType2 { enum DATATYPE flag; union { int *d; double *lf; char原创 2014-12-07 18:58:50 · 946 阅读 · 0 评论 -
c语言重载不同类型数组的print(c99标准)
#include #define printX(x, n) _Generic((x), \ double *: print_double, \ int *: print_int)(x, n)void print_double(double arr[], int n){ for (int i = 0; i < n; ++i) printf("double %lf\n", arr[i]);}void原创 2014-12-07 18:54:31 · 994 阅读 · 0 评论