cc
C++博客
::
首頁(yè)
::
新隨筆
::
聯(lián)系
::
聚合
::
管理
::
38 隨筆 :: 14 文章 :: 21 評(píng)論 :: 0 Trackbacks
<
2006年12月
>
日
一
二
三
四
五
六
26
27
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
常用鏈接
我的隨筆
我的評(píng)論
我參與的隨筆
留言簿
(3)
給我留言
查看公開留言
查看私人留言
隨筆檔案
(38)
2013年3月 (1)
2011年5月 (1)
2011年2月 (3)
2010年3月 (2)
2010年2月 (1)
2010年1月 (4)
2009年12月 (2)
2009年11月 (5)
2009年10月 (4)
2009年7月 (1)
2009年6月 (2)
2009年5月 (2)
2009年4月 (1)
2008年10月 (1)
2008年9月 (1)
2008年8月 (1)
2008年7月 (3)
2007年12月 (2)
2007年7月 (1)
文章分類
(10)
編程相關(guān)(9)
(rss)
經(jīng)典網(wǎng)評(píng)(1)
(rss)
文章檔案
(14)
2008年7月 (1)
2006年12月 (13)
相冊(cè)
cc
搜索
最新評(píng)論
1.?re: 使用 .NET Remoting 實(shí)現(xiàn)并行計(jì)算 [轉(zhuǎn)]
評(píng)論內(nèi)容較長(zhǎng),點(diǎn)擊標(biāo)題查看
--EssaysService rewiew
2.?re: 使用 .NET Remoting 實(shí)現(xiàn)并行計(jì)算 [轉(zhuǎn)]
評(píng)論內(nèi)容較長(zhǎng),點(diǎn)擊標(biāo)題查看
--custom essay writing services reviews
3.?re: 使用 .NET Remoting 實(shí)現(xiàn)并行計(jì)算 [轉(zhuǎn)]
評(píng)論內(nèi)容較長(zhǎng),點(diǎn)擊標(biāo)題查看
--this link
4.?re: C#中new和override區(qū)別
THX!
--programmer
5.?re: 數(shù)據(jù)庫(kù)水平分庫(kù)框架設(shè)計(jì)
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
--aaaaaaaaaaaaaaaaaaaa
閱讀排行榜
1.?WINDOWS 邏輯坐標(biāo) 設(shè)備坐標(biāo) 屏幕坐標(biāo) 客戶區(qū)坐標(biāo)(2509)
2.?空間中直線和三角面片求交(2443)
3.?C# winform 實(shí)現(xiàn)(不規(guī)則)窗體或者控件的拖動(dòng)(2416)
4.?保存Graphics對(duì)象到Bitmap對(duì)象 [轉(zhuǎn)](2206)
5.?如何在Dll中導(dǎo)出STL類(1940)
評(píng)論排行榜
1.?數(shù)據(jù)庫(kù)水平分庫(kù)框架設(shè)計(jì)(2)
2.?C++中extern “C”含義深層探索(1)
3.? C#中new和override區(qū)別 (1)
4.?CString和string的互相轉(zhuǎn)換 (1)
5.?如何在Dll中導(dǎo)出STL類(1)
一道騰訊的面試題
class?a
{
word?m_a1;
word?m_a2;
a(){m_a1=1;m_a2=2;}
void?fun(){printf("%d,%d",m_a1,m_a2);}
}
class?b
{
dword?m_a3;
b(){m_a3=3;}
void?fun(){printf("%d",m_a3);}
}
main()
{
a?a;
b?*pb;
pb=b*(&a);
pb->fun();
}
輸出是什么?
posted on 2006-12-17 15:30
醒目西西
閱讀(596)
評(píng)論(2)
編輯
收藏
引用
所屬分類:
編程相關(guān)
評(píng)論
#
re: 一道騰訊的面試題
2006-12-17 15:30
醒目西西
結(jié)果是1
pb=(b*)(&A); 將A的地址傳給了pb,并強(qiáng)制轉(zhuǎn)化為b類的地址
pb->fun(); 調(diào)用b 的fun()方法,不過此時(shí)ma_3,是a類的ma_1,所以輸出1
你可以改一下程序運(yùn)行就知道了
#include <stdio.h>
class a
{
char m_a1;
char m_a2;
public:
a(){m_a1=1;m_a2=2;}
void fun(){printf("%d,%d",m_a1,m_a2);}
};
class b
{
char m_a3;
public:
b(){m_a3=3;}
void fun(){printf("%dggggg",m_a3);}//可以看出是調(diào)用了該方法
};
void main()
{
a A;
b *pb;
pb=(b*)(&A);
pb->fun();
}
回復(fù)
更多評(píng)論
#
re: 一道騰訊的面試題
2006-12-17 15:30
醒目西西
在win32和32位編譯器的環(huán)境下,結(jié)構(gòu)體(struct和class)中的數(shù)據(jù)域是按聲明的先后順序,“向上生長(zhǎng)”的。就是說若結(jié)構(gòu)體A中按先后聲明了兩個(gè)域a、b,則存放b的地址大與存放a的地址!注意,有些編譯器為了提高在32位系統(tǒng)中對(duì)內(nèi)存的訪問速度,所以使用了內(nèi)存對(duì)齊技術(shù)--結(jié)構(gòu)體中的各個(gè)域是按4字節(jié)對(duì)齊的!
我們假設(shè)樓主提供的題目如下:
#include <stdlib.h>
#include <stdio.h>
class a {
short m_a1;
short m_a2;
public:
a() {
m_a1 = 1;
m_a2 = 2;
}
void fun() {
printf("%d,%d", m_a1, m_a2);
}
};
class b{
int m_a3;
b() {
m_a3 = 3;
}
public:
void fun() {
printf("%d", m_a3);
}
};
int main() {
printf("sizeof a, b = %d %d\n", sizeof(a), sizeof(b));
a a;
b *pb;
pb = (b*)(&a);
pb -> fun();
}
就是說,a的大小是8字節(jié),b的大小是4字節(jié)!
而b::fun()就是按int的格式輸出結(jié)構(gòu)體中的前四個(gè)字節(jié)!所以輸出1!
但是,若沒有使用內(nèi)存對(duì)齊技術(shù)!上面的問題就麻煩了!
a和b 的大小都是4字節(jié)!
a a+2
1 2 -> (2 << 16) | 1
所以應(yīng)該輸出:
131073
回復(fù)
更多評(píng)論
刷新評(píng)論列表
只有注冊(cè)用戶
登錄
后才能發(fā)表評(píng)論。
【推薦】100%開源!大型工業(yè)跨平臺(tái)軟件C++源碼提供,建模,組態(tài)!
相關(guān)文章:
C++基本類型對(duì)象化的一個(gè)方案
[轉(zhuǎn)]delegate 與 多線程
去騰訊時(shí)遇到的一個(gè)面試題
騰訊最新面試題,算法高手請(qǐng)進(jìn)
一道騰訊的面試題
c#多線程教學(xué)(4):線程池和異步編程
c#.net多線程編程教學(xué)(2):Thread類
使用 .NET Remoting 實(shí)現(xiàn)并行計(jì)算 [轉(zhuǎn)]
[C#學(xué)習(xí)]在多線程中如何調(diào)用Winform
網(wǎng)站導(dǎo)航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
Powered by:
C++博客
Copyright © 醒目西西
久久艹国产
|
久久久久国产日韩精品网站
|
久久精品国产99久久丝袜
|
国产精品xxxx国产喷水亚洲国产精品无码久久一区
|
久久久久久无码Av成人影院
|
97久久综合精品久久久综合
|
94久久国产乱子伦精品免费
|
日韩久久无码免费毛片软件
|
亚洲αv久久久噜噜噜噜噜
|
99久久无色码中文字幕
|
久久97久久97精品免视看秋霞
|
日本久久中文字幕
|
久久亚洲精精品中文字幕
|
亚洲一区二区三区日本久久九
|
久久天天躁狠狠躁夜夜不卡
|
97久久精品人人澡人人爽
|
亚洲精品国产综合久久一线
|
国产精品美女久久久m
|
色天使久久综合网天天
|
成人国内精品久久久久一区
|
午夜精品久久久内射近拍高清
|
亚洲AV无码一区东京热久久
|
久久精品视屏
|
大美女久久久久久j久久
|
色偷偷久久一区二区三区
|
热久久国产欧美一区二区精品
|
久久se精品一区精品二区
|
久久亚洲精品成人无码网站
|
久久久久久亚洲精品无码
|
国产精品久久久久久影院
|
久久精品国产乱子伦
|
国产精品伊人久久伊人电影
|
久久久久国产精品
|
国内精品久久久久
|
国产精品99久久免费观看
|
亚洲精品高清国产一线久久
|
欧美性猛交xxxx免费看久久久
|
久久国产午夜精品一区二区三区
|
99国产精品久久久久久久成人热
|
久久精品国产亚洲av水果派
|
国产精品国色综合久久
|