筆試總結2(整理 覺得比較好的)

2021-07-04 12:25:40 字數 1371 閱讀 6453

1、static全域性變數與普通的全域性變數有什麼區別?static區域性變數和普通區域性變數有什麼區別?static函式與普通函式有什麼區別? 

static全域性變數與普通的全域性變數有什麼區別:

static全域性變數只初使化一次,防止在其他檔案單元中被引用;   

static區域性變數和普通區域性變數有什麼區別:

static函式與普通函式有什麼區別:

static函式在記憶體中只有乙份,普通函式在每個被呼叫中維持乙份拷貝

2、程式的區域性變數存在於(堆疊)中,全域性變數存在於(靜態區 )中,動態申請資料存在於( 堆)中。

3、寫出下列**的輸出內容   

#include

int inc(int a)   

int multi(int*a,int*b,int*c)   

typedef int(func1)(int in);   

typedef int(func2) (int*,int*,int*);  

void show(func2 fun,int arg1, int*arg2)  

main()   

答:110  

4、請找出下面**中的所有錯誤 (題目不錯,值得一看)  

說明:以下**是把乙個字串倒序,如「abcd」倒序後變為「dcba」   

#include"string.h"   

main()   

答:   

方法1:一共有4個錯誤;   

int main()   

方法2: (方法一需要額外的儲存空間,效率不高.) 不錯的想法

#include

#include

main()

int main( )

答: 程式崩潰,getmemory中的malloc 不能返回動態記憶體, free()對str操作很危險

18、char szstr[10];

strcpy(szstr,"0123456789");

產生什麼結果?為什麼?

答;正常輸出,長度不一樣,會造成非法的os,覆蓋別的內容.

h2.print();//列印輸出:human_num:0

return 0;

} //依次呼叫兩個析構函式:輸出:human_num:-1,human_num:-2;

輸出:110

0-1-2----------------------------

分析:human h1; //呼叫建構函式,---hum_num = 1;

h1.print(); //輸出:"human is 1"

human h2 = f1(h1); //再呼叫f1(h1)的過程中,由於函式引數是按值傳遞物件,呼叫預設的複製建構函式,h2並沒有呼叫定義的建構函式.

總結的比較好的vim命令

一 移動游標 1 左移h 右移l 下移j 上移k 2 向下翻頁ctrl f,向上翻頁ctrl b 3 向下翻半頁ctrl d,向上翻半頁ctrl u 4 移動到行尾 移動到行首0 數字 移動到行首第乙個字元處 6 移動到段首 8 移動到文件開始gg,移動到文件結束g 9 移動到匹配的 處 10 跳到...

AsyncTask 比較好的解釋

package com.example.asynctask import android.os.asynctask import android.widget.progressbar import android.widget.textview 生成該類的物件,並呼叫execute方法之後 首先執行...

ballmanford 比較好的理解方式

本文 假設存在最短路徑的話,那麼我們只要將這條最短路徑沿著權值為負的環路在繞一圈,那麼這條最短路徑的權值就會減少了,所以不存在最短的路徑,因為路徑的最小值為負無窮 一般形式 typedef struct edge edge n bool bellman ford 如果某次迴圈,沒有更新源點到任何頂點...