3. 描述實時系統的基本特性
在特定時間內完成特定的任務,實時性與可靠性
8. 氣泡排序演算法的時間複雜度是什麼?
o(n^2)
2.使用者輸入m,n值,從1至n開始順序迴圈數數,每數到m輸出該數值,直至全部輸出。寫出c程式。
迴圈鍊錶,用取餘操作做
華為8.enum string
x;問x= 0x801005,0x8010f4 ;
9.unsigned char *p1;
unsigned long *p2;
p1=(unsigned char *)0x801000;
p2=(unsigned long *)0x810000;
請問p1+5= ;
p2+5= ;
三.選擇題:
1.ethternet鏈結到internet用到以下那個協議?
a.hdlc;b.arp;c.udp;d.tcp;e.id
2.屬於網路層協議的是:
a.tcp;b.ip;c.icmp;d.x.25
3.windows訊息排程機制是:
a.指令佇列;b.指令堆疊;c.訊息佇列;d.訊息堆疊;
4.unsigned short hash(unsigned short key)
請問hash(16),hash(256)的值分別是:
a.1.16;b.8.32;c.4.16;d.1.32
四.找錯題:
1.請問下面程式有什麼錯誤?
int a[60][250][1000],i,j,k;
for(k=0;k<=1000;k++)
for(j=0;j<250;j++)
for(i=0;i<60;i++)
a[i][j][k]=0;
把迴圈語句內外換一下
2.#define max_cb 500
void lmiquerycsmd(struct msgcb * pmsg)
死迴圈3.以下是求乙個數的平方的程式,請找出錯誤:
#define square(a)((a)*(a))
int a=5;
int b;
b=square(a++);
4.typedef unsigned char byte
int examply_fun(byte gt_len; byte *gt_code)
.......
}五.問答題:
1.ip phone的原理是什麼?
ipv6
3.1號信令和7號信令有什麼區別,我國某前廣泛使用的是那一種?
4.列舉5種以上的**新業務?
微軟亞洲技術中心的面試題!!!
3.windows下的記憶體是如何管理的?
4.介紹.net和.net的安全性。
5.客戶端如何訪問.net元件實現web service?
6.c/c++編譯器中虛表是如何完成的?
7.談談com的執行緒模型。然後討論程序內/外元件的差別。
8.談談ia32下的分頁機制
小頁(4k)兩級分頁模式,大頁(4m)一級
10.在ia32中一共有多少種辦法從使用者態跳到核心態?
通過呼叫門,從ring3到ring0,中斷從ring3到ring0,進入vm86等等
11.如果只想讓程式有乙個例項執行,不能執行兩個。像winamp一樣,只能開乙個視窗,怎樣實現?
用記憶體對映或全域性原子(互斥變數)、查詢視窗控制代碼..
findwindow,互斥,寫標誌到檔案或登錄檔,共享記憶體。.
12.如何擷取鍵盤的響應,讓所有的『a』變成『b』?
鍵盤鉤子setwindowshookex
13.apartment在com中有什麼用?為什麼要引入?
14.儲存過程是什麼?有什麼用?有什麼優點?
我的理解就是一堆sql的集合,可以建立非常複雜的查詢,編譯執行,所以執行一次後,以後再執行速度比單獨執行sql快很多
15.template有什麼特點?什麼時候用?
16.談談windows dna結構的特點和優點。
同時,執行緒適合於在smp機器上執行,而程序則可以跨機器遷移。
思科2.陣列a[n],存放了1至n-1個數,其中某個數重複一次。寫乙個函式,找出被重複的數字.時間複雜度必須為o(n)函式原型:
int do_dup(int a,int n)
3 一語句實現x是否為2的若干次冪的判斷
int i = 512;
cout << boolalpha << ((i & (i - 1)) ? false : true) << endl;
4.unsigned int intvert(unsigned int x,int p,int n)實現對x的進行轉換,p為起始轉化位,n為需要轉換的長度,假設起始點在右邊.如x=0b0001 0001,p=4,n=3轉換後x=0b0110 0001
unsigned int intvert(unsigned int x,int p,int n)
_t = _t << p;
x ^= _t;
return x;
}慧通:
char * const p;
char const * p
const char *p
上述三個有什麼區別?
char * const p; //常量指標,p的值不可以修改
char const * p;//指向常量的指標,指向的常量值不可以改
const char *p; //和char const *p
char str1 = "abc";
char str2 = "abc";
const char str3 = "abc";
const char str4 = "abc";
const char *str5 = "abc";
const char *str6 = "abc";
char *str7 = "abc";
char *str8 = "abc";
cout << ( str1 == str2 ) << endl;
cout << ( str3 == str4 ) << endl;
cout << ( str5 == str6 ) << endl;
cout << ( str7 == str8 ) << endl;
結果是:0 0 1 1
解答:str1,str2,str3,str4是陣列變數,它們有各自的記憶體空間;
而str5,str6,str7,str8是指標,它們指向相同的常量區域。
12. 以下**中的兩個sizeof用法有問題嗎?[c易]
void uppercase( char str ) // 將 str 中的小寫字母轉換成大寫字母
char str = "abcde";
cout << "str字元長度為: " << sizeof(str)/sizeof(str[0]) << endl;
uppercase( str );
cout << str << endl;
答:函式內的sizeof有問題。根據語法,sizeof如用於陣列,只能測出靜態陣列的大小,無法檢測動態分配的或外部陣列大小。
函式外的str是乙個靜態定義的陣列,因此其大小為6,函式內的str實際只是乙個指向字串的指標,沒有任何額外的與陣列相關的資訊,因此sizeof作用於上只將其當指標看,乙個指標為4個位元組,因此返回4。
乙個32位的機器,該機器的指標是多少位
指標是多少位只要看位址匯流排的位數就行了。80386以後的機子都是32的資料匯流排。所以指標的位數就是4個位元組了。
main()
;int *ptr=(int *)(&a+1);
printf("%d,%d",*(a+1),*(ptr-1));
}輸出:2,5
*(a+1)就是a[1],*(ptr-1)就是a[4],執行結果是2,5
&a+1不是首位址+1,系統會認為加乙個a陣列的偏移,是偏移了乙個陣列的大小(本例是5個int)
int *ptr=(int *)(&a+1);
則ptr實際是&(a[5]),也就是a+5
原因如下:
&a是陣列指標,其型別為 int (*)[5];
而指標加1要根據指標型別加上一定的值,
不同型別的指標+1之後增加的大小不同
a是長度為5的int陣列指標,所以要加 5*sizeof(int)
所以ptr實際是a[5]
但是prt與(&a+1)型別是不一樣的(這點很重要)
所以prt-1只會減去sizeof(int*)
a,&a的位址是一樣的,但意思不一樣,a是陣列首位址,也就是a[0]的位址,&a是物件(陣列)首位址,a+1是陣列下一元素的位址,即a[1],&a+1是下乙個物件的位址,即a[5].
1.請問以下**有什麼問題:
int main()
沒有為str分配記憶體空間,將會發生異常
問題出在將乙個字串複製進乙個字元變數指標所指位址。雖然可以正確輸出結果,但因為越界進行內在讀寫而導致程式崩潰。
char* s="aaa";
printf("%s",s);
s[0]='b';
printf("%s",s);
有什麼錯?
"aaa"是字串常量。s是指標,指向這個字串常量,所以宣告s的時候就有問題。
cosnt char* s="aaa";
然後又因為是常量,所以對是s[0]的賦值操作是不合法的。
1、寫乙個「標準」巨集,這個巨集輸入兩個引數並返回較小的乙個。
c語言面試題
c c 的基礎知識 推薦給想學c 的朋友乙個簡單但是完整的學習c 的讀書路線圖 c primer c 標準程式庫 effective c effective stl 深入探索c 物件模型 c程式常用演算法原始碼 演算法 algorithm 計算機解題的基本思想方法和步驟。演算法的描述 是對要解決乙個...
C語言面試題
1.傳入乙個不多於4位的正整數,返回這個數字逆序後的數 逆序部分用函式封裝 10分 函式原型如下 int reversenumber int num 注 比如這個數字是 5328 返回 8235 返回的這個數字是八千兩百三十五 數字是 652 返回256 返回的這個數字二百五十六 2.傳入數字n,求...
c語言面試題之華為面試題
1 區域性變數能否和全域性變數重名?答 能,區域性會遮蔽全域性。要用全域性變數,需要使用 區域性變數可以與全域性變數同名,在函式內引用這個變數時,會用到同名的區域性變數,而不會用到全域性變數。對於有些編譯器而言,在同乙個函式內可以定義多個同名的區域性變數,比如在兩個迴圈體內都定義乙個同名的區域性變數...