随笔分类 -  ?Confuse?

摘要:GROUP BY:数据分组是按照逻辑次序把具有重复值的字段进行合并。--------------------------------------------------------------下面是遇到的困惑,看不明白这个结果:avg(pay_rate),avg(salary)是分别获得平均值,谁的平均值?既然group by city了,不是分别计算不同city里平均值(总和/总数?)为什么不计算值为空的值? 阅读全文
posted @ 2013-01-15 16:07 XhBinary 阅读(250) 评论(0) 推荐(0)
摘要:EX1:****************************************************************************class A{public: char a[3]; virtual void aa(){};};class B : virtual public A{public: char b[3]; virtual void bb(){};};class C : virtual public B{public: char c[3]; virtual void cc(){};};int main(){ cout << sizeof(A) 阅读全文
posted @ 2012-09-29 15:49 XhBinary 阅读(239) 评论(0) 推荐(0)
摘要:代码如下int main(){ printf("%f\n", 5); printf("%d\n", 5.01); return 0;}结果如下:第一个结果0.000000第二个结果 是一个大数。解释如下:首先参数5为int型,32为平台中为4字节,因此在stack中分配4字节的内存,用于存放参数5.然后printf()根据说明符 "%f",认为参数应该是个double型?(在printf函数中 float会自动转换成double?)因此从stack中读取了8个字节。很显然,内存访问越界,会发生什么情况不可预料。于是printf(&qu 阅读全文
posted @ 2012-09-24 13:31 XhBinary 阅读(127) 评论(0) 推荐(0)
摘要:最近看到一道题目,是这样的int main(void){ char s[] = "123456789"; char d[] = "abc"; strcpy(d, s); printf("%s, %s\n", d, s); return 0;}问输出结果。运行后发现是123456789,56789.源字符串被截掉一部分。解释说是因为分配内存地址是连续内存的原因。这个我能理解。因为是这样分配的 abc\0123456789\0,因为前者空间不足,所以复制后将后者一本分覆盖掉了,所以输出结果是123456789,56789.有一点不能理解的 阅读全文
posted @ 2012-09-23 12:51 XhBinary 阅读(348) 评论(0) 推荐(0)