① 問下計算機大神,C語言編譯執行時會自動去掉源代碼的注釋符,那麼這個去掉是有規則的還是無規則的亦或
一般情況下是不會反編譯出來的,但也有例外。
c語言是在預處理階段把所有的注釋全部幹掉的。編譯器不接受任何注釋,會直接報錯。
如果你的IDE能提供一個類似於插件之類的工具,在c程序提交編譯之前自動把你所有的注釋變進程序正文中做成那種由雙引號標識的字元串(例如添加一條語句char * _comm_1="Built on 2013-11-11";),而且之後沒有使用類似於混淆器這樣的防止反編譯的技術,那麼對軟體反匯編後是可以看到它們的。
但是正常情況下別人是不可能直接從軟體反編譯的結果上去找你的程序注釋的。
② 編程中//什麼意思
在C++中//是行注釋的意思。
程序的注釋是解釋性語句,您可以在 C++ 代碼中包含注釋,這將提高源代碼的可讀性。所有的編程語言都允許某種形式的注釋。
C++ 支持單行注釋和多行注釋。注釋中的所有字元會被 C++ 編譯器忽略。
C++中注釋的種類:
1、單行注釋:以雙斜線(//)開始,以換行符結束。當前雙斜線右側的所有內容都會被編譯器忽略。
2、界定符對注釋:以/*開始,以*/結束,可以包含出*/外的任意內容,包括換行符。當注釋界定符跨越多行時,最好能顯式指出其內部的程序行都屬於多行注釋的一部分。
C++所採用的風格是,注釋內的每行都以一個星號開頭,從而指出整個范圍都是多行注釋的一部分。
(2)被注釋的內容編譯器會忽略擴展閱讀
編程符號種類:
1、算術運算符
用於各類數值運算。包括加(+)、減(-)、乘(*)、除(/)、求余(或稱模運算,%)、自增(++)、自減(--)共七種。
2、關系運算符
用於比較運算。包括大於(>)、小於(<)、等於(==)、 大於等於(>=)、小於等於(<=)和不等於(!=)六種。
3、邏輯運算符
用於邏輯運算。包括與(&&)、或(||)、非(!)三種。
4、位操作運算符
參與運算的量,按二進制位進行運算。包括位與(&)、位或(|)、位非(~)、位異或(^)、左移(<<)、右移(>>)六種。
5、賦值運算符
用於賦值運算,分為簡單賦值(=)、復合算術賦值(+=,-=,*=,/=,%=)和復合位運算賦值(&=,|=,^=,>>=,<<=)三類共十一種。
6、條件運算符
這是一個三目運算符,用於條件求值(?:)。
7、逗號運算符
用於把若干表達式組合成一個表達式(,)。
8、指針運算符
用於取內容(*)和取地址(&)二種運算。
9、求位元組數運算符
用於計算數據類型所佔的位元組數(sizeof)。
10、特殊運算符
有括弧(),下標[],成員(→,.)等幾種。
③ C語言程序編譯時程序中的注釋部分是否參加編譯
可以參加。所謂注釋,便是用自然語言對源代碼中某些語句或方法進行說明。並且注釋的內容不會被編譯器編譯。可以在源代碼中添加任何想要添加的說明。
注釋可以出現在代碼中的任何位置,用來向用戶提示或解釋代碼的含義。程序編譯時,會忽略注釋,不做任何處理,就好像它不存在一樣。
如需要注釋的內容比較多,一行寫不完,如果在每一行注釋中都使用//。當然這種方法比較繁瑣,看起來頁面也不夠簡潔。這時候,就需要用到多行注釋。多行注釋還有一種不夠簡潔的注釋方式,那就是嵌套在代碼語句中。
(3)被注釋的內容編譯器會忽略擴展閱讀
使用注釋的例子的源代碼
/*
源世界整理,www.yuanshijie.top
*/
#include <stdio.h>
int main()
{
/* puts 會在末尾自動添加換行符 */
puts("http://www.yuanshijie.top");
printf("源世界博客 "); //printf要手動添加換行符
return 0;
④ 注釋說明被計算機編譯系統忽略。
正確,程序注釋在編譯的時候被編譯系統忽略,直接過濾掉,不參與編譯。