VS2008中影響exe大小和速度的編譯選項
今天,用VS2008編譯一個C語言的工程,修改完所有錯誤後,出現瞭如下的錯誤:
MSVCRTD.lib(crtexew.obj) : error LNK2019: unresolved external symbol[email protected]referenced in function ___tmainCRTStartup
在網上搜了一下,做如下修改:
Project -> xxxx Properties -> Configuration Properties -> Linker -> System ->Console ,原來是/subsystem:windows,這裡改為(/SUBSYSTEM:CONSOLE)。
修改後, 該問題解決。
這個工程的入口函式是main。還有一個詳細的描述:
一,問題描述
error LNK2001: unresolved external symbol [email protected]
debug/main.exe:fatal error LNK 1120:1 unresolved externals
error executing link.exe;
二,產生這個問題可能的原因
1, 你用vc建了一個控制檯程式,它的入口函式應該是main, 而你使用了WinMain.
2. 你用vc打開了一個.c/.cpp 檔案,然後直接編譯這個檔案,這個檔案中使用了WinMian而不是main作為入口函式。vc這時的預設設定是針對控制檯程式的。
三, 解決方法
如果入口函式是WinMain,
1.進入project->setting->c/c++, 在category中選擇preprocessor,在processor definitions中刪除_CONSOLE, 新增_WINDOWS
2.進入project->setting->Link, 在Project options中將 /subsystem:console改為/subsystem:windows.
3.儲存設定,Rebuild All.
如果入口函式是main,做反向的修改。
四,VS2005中的設定
1.選單中選擇 Project->Properties, 彈出Property Pages視窗
2.在左邊欄中依次選擇:Configuration Properties->C/C++->Preprocessor,然後在右邊欄的Preprocessor Definitions對應的項中刪除_CONSOLE, 新增_WINDOWS.
3.在左邊欄中依次選擇:Configuration Properties->Linker->System,然後在右邊欄的SubSystem對應的項改為Windows(/SUBSYSTEM:WINDOWS)
4.Rebuild All. Ok 。
相關推薦
VS2008中影響exe大小和速度的編譯選項
今天,用VS2008編譯一個C語言的工程,修改完所有錯誤後,出現瞭如下的錯誤: MSVCRTD.lib(crtexew.obj) : error LNK2019: unresolved external symbol[email protected]referenced in function _
VS2008 影響程式大小和速度的選項
下面要說的,都是預設值是release的,debug版本一般不需要調選項。 專案 - 屬性 - 配置屬性 - C/C++ 【優化】: 通常,演算法程式選擇最大化速度(/O2),介面程式選擇最小化大小(/O1),可以獲得最佳的效果。 優選大小或速度,只有在使用完全優化(
java中Bigdecimal比較大小和加減乘除
BigDecimal bignum1 = new BigDecimal("10"); BigDecimal bignum2 = new BigDecimal("5"); BigDecimal bignum3 = null; //加法 bignum3 = bignum1.add(bignum2);
android開發中控制元件大小和字型大小的選擇
1.dp:在控制元件邊距大小的選擇中選擇dp(density-independent pixel),這樣系統邊距就是畫素密度無關,在設定邊距、內邊距或者任何不打算按畫素值指定尺寸的情況下,通常都使用dp這種單位。 2.sp:scale-independent pixel,
WTL環境中CEdit或Cstatic控制元件中修改字型大小和顏色
本文主要介紹只讀模式的下的CEdit控制元件和CStatic控制元件的字型的大小和顏色的修改,編輯模式下的CEdit控制元件的原理是一樣的只是訊息變了。 1. 修改字型顏色 只讀模式下的CEdit控制元件和CSataic控制元件通過傳送
在Oracle中查詢表的大小和表空間的大小 .
1、檢視Oracle資料庫中表空間資訊的工具方法: 使用oracle enterprise manager console工具,這是oracle的客戶端工具,當安裝oracle伺服器或客戶端時會自動安裝此工具,在windows作業系統上完成oracle安裝後,通過下面的方法登入該工具:開始選單——程
java中的多型和繼承---"編譯看左邊,執行看右邊"(多型執行)
老畢的"編譯看左邊,執行看右邊"(多型執行) (對面向物件語言中理解多型、繼承很有幫助~~~) 在多型中,成員變數的特點: 無論編譯和執行,都參考左邊(引用型變數所屬的類) 在多型中,靜態成員函式的特點:無論編譯和執行
gcc 和g++編譯選項詳解
gcc 提供了大量的警告選項,對程式碼中可能存在的問題提出警 告,通常可以使用-Wall來開啟以下警告: -Waddress -Warray-bounds (only with -O2) -Wc++0x-compat -Wchar-subscripts -Wi
VS2008中編譯和使用OpenSSL
一、編譯OpenSSL 在編譯OpenSSL前,需要正確安裝Perl,因為在編譯OpenSSL時需要使用到該程式。 下載最新版本的Perl:http://downloads.activestate.com/ActivePerl/Windows/5.8/ActivePer
在Editplus中配置java的(帶包)編譯(javac)和執行(java)的方法
會有 post 快捷方式 java程序 技術分享 不能 安裝路徑 一行 提示符 配置的前提是電腦安裝了JDK而且配置好了相關的環境變量(JAVA_HOME,path和classpath)。 配置好後在命令行中輸入javac和java驗證是否配置成功: 假設出現上
MyEclipse背景與字體大小和xml文件中字體大小調整
ref 代碼 AS 需要 ML ont reference round 時間 1、打開window / Preference,彈出Preference面板 2、展開General標簽,選中Editors選項,展開。 3、選中 Text Editors,右邊出現TestEdi
查看mysql庫中所有表的大小和記錄數
total 2.3 for mat 自帶 spa desc where 系統目錄 查看mysql庫中所有表的大小和記錄數 SELECT TABLE_NAME,DATA_LENGTH,INDEX_LENGTH,(DATA_LENGTH+INDEX_LENGTH) as le
Echarts圖表在移動端和小程式中影響頁面的滾動的解決辦法
Echats圖表在移動端顯示後,當手指在圖表區域內滑動,會影響頁面的滾動。h5頁面沒有親測,小程式頁面,經排查,是因為觸發了touchStart、touchMove和touchEnd方法。 一、h5頁面解決方法 1.如果可以的話,移動端建議使用highCharts代替echarts,感覺
[Java]統計指定目錄中檔案的個數和總的大小
題目 給定一個指定的目錄,例如"E:\音樂",求出該目錄下檔案的總數,以及所有檔案加起來的大小. ·複習了File類的使用方法 ·複習了使用遞迴演算法查詢檔案 程式碼實現 說明 ArrayList<File> fileList; //用於儲存找到的每一個檔
Oracle中查詢表的大小、表的佔用情況和表空間的大小
有兩種含義的表大小。一種是分配給一個表的物理空間數量,而不管空間是否被使用。可以這樣查詢獲得位元組數: select segment_name, bytes from user_segments where segment_type = 'TABLE'; 或者 &
webkit在vs2008中編譯
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!  
Java中一維陣列和二維陣列儲存佔用記憶體大小問題
問題:在java中,一維陣列和二維陣列在資料量一樣的情況下,開闢的記憶體大小是怎樣的? 一、嘗試階段: 1、程式碼一: public class OneArrayMemory{ public static void main(String[] args){ int num1 = 1
Golang中自動“取引用”和“解引用”對原值的影響
1. 寫在前面 我們知道Golang在呼叫方法時,會自動對實參進行“取引用”或“解引用”操作。我們在前面的部落格Golang對方法接收者變數的自動“取引用”和“解引用”中也已經討論了容易引起混淆的解/取引用和介面相關的知識,這裡我們將討論另一個問題:“自動取引用”和“自動解引用”會不
C語言獲取當前編譯執行檔案(XXX.exe)檔名和目錄路徑
C語言獲取當前編譯執行檔案(XXX.exe)檔名和目錄路徑 vc2010編譯通過 #include<stdio.h> #include<string.h> #include<windows.h> #include<stdlib.h> int ma
Linux編譯安裝中configure、make和make install各自的作用
./configure是用來檢測你的安裝平臺的目標特徵的。比如它會檢測你是不是有CC或GCC,並不是需要CC或GCC,它是個shell指令碼。 make是用來編譯的,它從Makefile中讀取指令,然後編譯。 make install是用來安裝的,它也從Makefile中讀取指令,安裝到指定