p; a.print(); } void main(void) { A a, *pa,*pb,*pc; B b; C c;
pa=&a; pb=&b; pc=&c;
a.print(); b.print(); c.print();
pa->print(); pb->print(); pc->print();
print(a); print(b); print(c); } A: A::print() B::print() C::print() A::print() B::print() C::print() A::print() A::print() A::print() 31. ÊÔ±àдº¯ÊýÅжϼÆËã»úµÄ×ֽڴ洢˳ÐòÊÇ¿ªÐò(little endian)»¹ÊǽµÐò(bigendian) ´ð: bool IsBigendian() { unsigned short usData = 0x1122; unsigned char *pucData = (unsigned char*)&usData; return (*pucData == 0x22); } -------------------------------------------------------------------------- 32.¼òÊöCritical SectionºÍMutexµÄ²»Í¬µã ´ð: ¶Ô¼¸ÖÖͬ²½¶ÔÏóµÄ×ܽá 1.Critical Section A.Ëٶȿì B.²»ÄÜÓÃÓÚ²»Í¬½ø³Ì C.²»ÄܽøÐÐ×ÊԴͳ¼Æ(ÿ´ÎÖ»¿ÉÒÔÓÐÒ»¸öÏ̶߳Թ²Ïí×ÊÔ´½øÐдæÈ¡) 2.Mutex A.ËÙ¶ÈÂý B.¿ÉÓÃÓÚ²»Í¬½ø³Ì C.²»ÄܽøÐÐ×ÊԴͳ¼Æ 3.Semaphore A.ËÙ¶ÈÂý B.¿ÉÓÃÓÚ²»Í¬½ø³Ì C.¿É½øÐÐ×ÊԴͳ¼Æ(¿ÉÒÔÈÃÒ»¸ö»ò³¬¹ýÒ»¸öÏ̶߳Թ²Ïí×ÊÔ´½øÐдæÈ¡) 4.Event A.ËÙ¶ÈÂý B.¿ÉÓÃÓÚ²»Í¬½ø³Ì C.¿É½øÐÐ×ÊԴͳ¼Æ -------------------------------------------------------------------------- 33.Ò»¸öÊý¾Ý¿âÖÐÓÐÁ½¸ö±í: Ò»ÕűíΪCustomer£¬º¬×Ö¶ÎID,Name; Ò»ÕűíΪOrder£¬º¬×Ö¶ÎID,CustomerID£¨Á¬ÏòCustomerÖÐIDµÄÍâ¼ü£©,Revenue£» д³öÇóÿ¸öCustomerµÄRevenue×ܺ͵ÄSQLÓï¾ä¡£ ½¨±í create table customer ( ID int primary key,Name char(10) ) go create table [order] ( ID int primary key,CustomerID int foreign key references customer(id) , Revenue float ) go --²éѯ select Customer.ID, sum( isnull([Order].Revenue,0) ) from customer full join [order] on( [order].customerid=customer.id ) group by customer.id -------------------------------------------------------------------------- 34.ÇëÖ¸³öÏÂÁгÌÐòÖеĴíÎó²¢ÇÒÐÞ¸Ä void GetMemory(char *p){ p=(char *)malloc(100); } void Test(void){ char *str=NULL; GetMemory=(str); strcpy(str,"hello world"); printf(str); } A:´íÎó--²ÎÊýµÄÖµ¸Ä±äºó£¬²»»á´«»Ø GetMemory²¢²»ÄÜ´«µÝ¶¯Ì¬Äڴ棬Testº¯ÊýÖÐµÄ strÒ»Ö±¶¼ÊÇ NULL¡£ strcpy(str, "hello world");½«Ê¹³ÌÐò±ÀÀ£¡£ ÐÞ¸ÄÈçÏÂ: char *GetMemory(){ char *p=(char *)malloc(100); return p; } void Test(void){ char *str=NULL; str=GetMemory(){ strcpy(str,"hello world"); printf(str); } ·½·¨¶þ:void GetMemory2(char **p)±äΪ¶þ¼¶Ö¸Õë. void GetMemory2(char **p, int num) { *p = (char *)malloc(sizeof(char) * num); } -------------------------------------------------------------------------- 35.³ÌÐò¸Ä´í class mml { private: static unsigned int x; public: mml(){ x++; } mml(static unsigned int &) {x++;} ~mml{x--;} pulic: virtual mon() {} = 0; static unsigned int mmc(){return x;} ......
}; class nnl:public mml { private: static unsigned int y; public: nnl(){ x++; } nnl(static unsigned int &) {x++;} ~nnl{x--;} public: virtual mon() {}; static unsigned int nnc(){return y;} ...... }; ´úÂëƬ¶Ï: mml* pp = new nnl; .......... delete pp; A: »ùÀàµÄÎö¹¹º¯ÊýÓ¦¸ÃΪÐ麯Êý virtual ~mml{x--;} -------------------------------------------------------------------------- 36.101¸öÓ²±Ò100Õæ¡¢1¼Ù£¬Õæ¼ÙÇø±ðÔÚÓÚÖØÁ¿¡£ÇëÓÃÎÞíÀÂëÌìƽ³ÆÁ½´Î¸ø³öÕæ±ÒÖØ»¹ÊǼٱÒÖصĽáÂÛ¡£ ´ð: 101¸öÏÈÈ¡³ö2¶Ñ, 33,33 µÚÒ»´Î³Æ,Èç¹û²»ÏàµÈ,˵Ã÷ÓÐÒ»¶ÑÖØ»òÇá ÄÇô°ÑÖصÄÄǶÑÄÃÏÂÀ´,ÔÙ·ÅÁíÍâ35¸öÖеÄ33 Èç¹ûÏàµÈ,˵Ã÷¼ÙµÄÖØ,Èç¹û²»ÏàµÈ,зÅÉÏÈ¥µÄ»¹ÊÇÖصĻ°,˵Ã÷¼ÙµÄÇá(²»¿ÉÄÜзÅÉÏÈ¥µÄÇá) µÚÒ»´Î³Æ,Èç¹ûÏàµÈµÄ»°£¬Õâ66¸ö¿Ï¶¨¶¼ÊÇÕæµÄ,´ÓÕâ66¸öÖÐÈ¡³ö35¸öÀ´,ÓëʣϵÄû³Æ¹ýµÄ35¸ö±È ÏÂÃæ¾Í²»ÓÃ˵ÁË ·½·¨¶þ: µÚ3ÌâÒ²¿ÉÒÔÄÃA(50),B(50)±Èһϣ¬Ò»ÑùµÄ»°ÄÃʣϵÄÒ»¸öºÍÕæµÄ±Èһϡ£ Èç¹û²»Ò»Ñù£¬¾ÍÄÃÆäÖеÄÒ»¶Ñ¡£±ÈÈçA(50)ÔÙ·Ö³ÉÁ½¶Ñ25±Èһϣ¬Ò»ÑùµÄ»°¾ÍÔÚ B(50)ÖУ¬²»Ò»Ñù¾ÍÔÚA(50)ÖУ¬½áºÏµÚÒ»´ÎµÄ½á¹û¾ÍÖªµÀÁË¡£ -------------------------------------------------------------------------- 37.static±äÁ¿ºÍstatic º¯Êý¸÷ÓÐʲôÌص㣿 ´ð: static±äÁ¿£ºÔÚ³ÌÐòÔËÐÐÆÚÄÚÒ»Ö±ÓÐЧ£¬Èç¹û¶¨ÒåÔÚº¯ÊýÍ⣬ÔòÔÚ±àÒëµ¥ÔªÄڿɼû£¬Èç¹ûÔÚº¯ÊýÄÚ£¬ÔÚÔÚ¶¨ÒåµÄblockÄڿɼû£» staticº¯Êý£ºÔÚ±àÒëµ¥ÔªÄڿɼû£» ---------------------------------------------- |