上一页 1 ··· 7 8 9 10 11 12 13 下一页
摘要: 类与结构: 唯一的区别是 class 中变量默认是 private 的, 而 struct 是 public 的 例题1:class A {const int size = 0;};这道程序题存在成员变量的初始化问题. 常量必须在构造函数的初始化列表里面初始化或者将其设置为 staticclass A {static const int size = 0;};class A ... 阅读全文
posted @ 2014-04-02 10:35 周卓 阅读(120) 评论(0) 推荐(0) 编辑
摘要: 1. 函数指针 void (*f)()2. 函数返回指针 void *f()3. const 指针. const int * or int const *. 即指针指向的值不能被修改, const 在 * 左边4. 指向 const 的指针. int * const, 指针本身不能被修改例题1:一个指向整型数组的指针定义为 A. int(*ptr) [] B. int *ptr[] C. in... 阅读全文
posted @ 2014-04-02 09:01 周卓 阅读(170) 评论(0) 推荐(0) 编辑
摘要: 例题1:class A {public: A() { m_a = 1; m_b = 2; } void fun() { printf("%d%d\n", m_a, m_b); }private: int m_a; int m_b;};class B {public: B() { m_c = 3; } void fun() { printf("%d\n", m_c); }private: int m_c;};int main() { A a; B *pb = (B*) (&a); pb->fun(); return 0;}考察内存偏移, 答案 阅读全文
posted @ 2014-04-01 23:49 周卓 阅读(124) 评论(0) 推荐(0) 编辑
摘要: 指针和引用的区别非空区别. 在任何情况下, 都不能使用指向空值的引用, 一个引用必须总是指向某个对象. 而指针, 可为 NULL 合法性区别. 在使用引用前不需要测试其合法性. 相反, 指针应总是被测试, 防止其为空. 可修改区别. 指针可以被重新赋值, 而引用总是在初始化时被指定对象, 以后不得修改. const 常量赋值时, 必须同时初始化. effective C++ 讲到 const 声明和初始化的 item2 没太看懂例题1: 1 // p 只是一个副本2 void getMemory(char *p, int num) {3 p = (char *)malloc(sizeo... 阅读全文
posted @ 2014-04-01 20:27 周卓 阅读(160) 评论(0) 推荐(0) 编辑
摘要: x 表示 16 进制08 表示显示出 8 个字符int main() { unsigned int a = 0xfffffff7; unsigned char i = (unsigned char) a; char *b = (char *)&a; printf("%x, %x\n", i, *b); printf("%08x, %08x\n", i, *b); return 0;}f7, fffffff7000000f7, fffffff7 阅读全文
posted @ 2014-04-01 20:20 周卓 阅读(466) 评论(0) 推荐(0) 编辑
摘要: 参数的入栈顺序和编译器的具体实现有关, 我在 G++ 下测试, 入栈是从右向左int f(int &a, int &b) { return a +b;}int main() { int b = 3; int arr[] = {6, 7, 8, 9, 10}; int *ptr = arr; *(ptr++) += 123; printf("%d, %d\n", *ptr, *(++ptr)); int a = 10; cout << f(a, ++a) << endl; return 0;}返回 8, 8; 22 阅读全文
posted @ 2014-04-01 19:30 周卓 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 1. Please choose the right statement about const usage: A. const int a; //const integer B. int const a; //const integer C. int const *a; //a pointer which point to const integer D. const int... 阅读全文
posted @ 2014-03-29 17:10 周卓 阅读(272) 评论(0) 推荐(0) 编辑
摘要: 1. 冒泡排序#include #define LENGTH 8 void main() { int i, j, tmp, number[LENGTH] = {95, 45, 15, 78, 84, 51, 24, 12}; for (i = 0; i i; j--) { if (number[j] int a[] = { 1, 2, 8, 7, 9, 5, 6, 4, 3, 66, 77, 33, 22, 11 }; /* 输出数组前n各元素 */void prt(int n){ int i; for (i = 0; i = p || piv... 阅读全文
posted @ 2014-03-29 14:46 周卓 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 1.假设把整数关键码K散列到N个槽列表,以下哪些散列函数是好的散列函数A:h(K)=K/N;B:h(K)=1;C:h(K)=KmodN;D:h(K)=(K+rand(N))modN,rand(N)返回0到N-1的整数D 最复杂, 选D开放地址法:http://blog.csdn.net/w_fenghui/article/details/2010387a. 线性探测再散列b. 二次探测再散列开放地址法不能直接删除某个元素, 这样会阻断后面的查询, 一般是设置无效位再哈希法: 使用多个哈希函数链地址法:冲突时, 延长冲突位的链表. 用于冲突比较严重的情况.2.你认为可以完成编写一个C语言编译器的 阅读全文
posted @ 2014-03-29 10:48 周卓 阅读(621) 评论(0) 推荐(0) 编辑
摘要: 1.宿舍内有五个童鞋一起玩对战游戏,每场比赛有一些人作为红方,另外一些人作为蓝方,请问至少需要多少场比赛才能使得任意两个人之间有一场红方对蓝方和一场蓝方对红方的比赛,请写出思路分析: 将 5 人分成两队, 最多能有 6 对对抗, 比如分成 3+2, 或 2+3. 5个同学任意两人之间有一场对抗, 那么至少需要 20 个对抗.ceil(20/3) = 4.2.当存储数据量超出单节点数据管理能力的时候,可以采用的办法是数据库sharding的解决方案,也就是按照一定的规律把数据分散存储在多个数据管理节点N中(节点编号为0,1,2,,,,N-1)。假设存储的数据时a请完成为数据a计算存储节点的程序。 阅读全文
posted @ 2014-03-29 09:47 周卓 阅读(1013) 评论(0) 推荐(0) 编辑
上一页 1 ··· 7 8 9 10 11 12 13 下一页