復(fù)習(xí)C/C++、Java語言知識(shí),結(jié)合Python語言知識(shí),結(jié)合實(shí)例代碼說明C/C++、Java與Python的區(qū)別(綜述題)。 要求: 至少列出十點(diǎn)以上區(qū)別; 要求每點(diǎn)說明時(shí)要結(jié)合示例代碼; 嚴(yán)禁抄襲!
1.c語言有指針,其余的沒有指針 c指針代碼如下: void swap(int * m, int * n){ int temp; temp = *m; *m = *n; *n = temp; }
2.c/c++/java 對(duì)變量的定義很嚴(yán)格各種類型有嚴(yán)格的定義 c/c++/java 定義如下: int a=0; 而python直接: a=0 即可
3.在c/c++/java中每段代碼之后要有;分開 例如: int a=0; 而python直接: a=0 即可
4.在c/c++/java中的for循環(huán)有括號(hào)包括 例如: for(int a=0;a<100;a++) { int b=a; }
而在python中沒有這樣的結(jié)構(gòu),例如: for iterating_var in sequence: statements(s)
5.在c/c++c/java中兩行代碼之間可以不嚴(yán)格遵循錯(cuò)位的結(jié)構(gòu),例如: for(int a=0;a<100;a++) { int b=a; }
而在python中沒有錯(cuò)位的話,會(huì)進(jìn)行報(bào)錯(cuò)
6.在C語言中,聲明全局變量,如果值是恒定的,那么可以直接用#define聲明, 如果只是聲明全局,并且變量的值是可變的,那么直接類似int a 就可以了, 在python中,聲明全局變量時(shí),需要加上global,類似global a, 在函數(shù)里面使用的時(shí)候需要先聲明global a , 否則直接用a那么python會(huì)重新創(chuàng)建一個(gè)新的本地對(duì)象并將新的值賦值給他, 原來的全局變量的值并不變化 例如: global a a = 3 def func(): a = 4 print(a)
func() print(a)
運(yùn)行結(jié)果: 3
global a a = 3 def func(): global a a = 4 print(a)
func() print(a) 運(yùn)行結(jié)果 4
7.在C語言中使用那個(gè)庫函數(shù),需要引入頭文件用include引入, 而在python中需要引入別的模塊或者函數(shù)時(shí)需要用import引入。
兩者的不同機(jī)制是,C語言中include是告訴預(yù)處理器, 這個(gè)include指定的文件的內(nèi)容,要當(dāng)作本地源文件出現(xiàn)過, 例如:import "a.h" 而python中的import可以通過簡單的import 導(dǎo)入, 或者是 import numpy as np
8.在函數(shù)的結(jié)構(gòu)上 python: def functionname( parameters ): "函數(shù)_文檔字符串" function_suite return [expression]
java: 修飾符 返回值類型 方法名(參數(shù)類型 參數(shù)名){ ... 方法體 ... return 返回值; }
9.python是全動(dòng)態(tài)性的,可以在運(yùn)行時(shí)自己修改自己的代碼, java只能通過變通方法實(shí)現(xiàn)。python的變量是動(dòng)態(tài)的, 而java的變量是靜態(tài)的,需要事先聲明,
10.在注釋的方式不一樣 例如在java中 //int a=0; 在python中 #a=0
|