危險的注釋,行連線符

2021-05-23 19:25:35 字數 622 閱讀 6422

c語言中,//注釋的後面如果還有行連線符/那就危險了,下面一行會被注釋掉,示例如下:

void main()

int a, b;

a = 7;  //注釋的後面有行連線符/

b = 8;

printf("a=%d, b=%d", a, b);   

這段程式中,b輸出是0而不是8,就是因為 b=8; 這句被注掉了。

上面這段程式去掉行連線符後如下:

void main()

int a, b;

a = 7;  //注釋的後面有行連線符  b = 8;

printf("a=%d, b=%d", a, b);   

如果是在巨集定義中就更危險了:

#define memfree_struct(_pstruct_)/

//printf("free memory"); /

if(_pstruct_ != null)

這個巨集展開就成了

#define memfree_struct(_pstruct_) //printf("free memory"); if(_pstruct_ != null)

其實就是乙個空定義了,free被注釋掉了,記憶體得不到釋放,可能就會造成記憶體洩露了

bat中的連線符

command1 command2 用來分隔乙個命令列中的多個命令。cmd.exe 執行第乙個命令,然後執行第二個命令。command1 command2 只有在符號 前面的命令成功時,才用於執行該符號後面的命令。cmd.exe 執行第乙個命令,然後只有在第乙個命令執行成功時才執行第二個命令。com...

詳解Python的連線符

目錄 python的連線符主要有 加號 逗號 空格 反斜線 join 的方式 注意,只能連線字串,如果乙個是字串乙個是數字就會報錯 persjfzkpcsrint 這裡是字串 這裡是也是字串 另外,這裡的字串也可以是變數形式 a 這裡是字串 print 這裡是字串 a s 這裡是字串 逗號可以連線字...

linux 命令間的連線符

表示任務在後台執行,如要在後台執行redis server,則有 redis server 表示前一條命令執行成功時,才執行後一條命令 如 echo 1 echo 2 表示上一條命令執行失敗後,才執行下一條命令,如 cat nofile echo fail 注 分號表示命令依次執行。管道符 命令格式...