Ⅰ windows 核心編程第四章中的一段代碼,我不能正確編譯,請幫我看看什麼問題,急急急!!!!!
日文不懂,不過意思猜到是:錯誤: unresolved external symbol _main
原因是你的你的程序類型和入口函數不匹配,編譯器根據類型在查找它認為的入口函數main,而你給出的是WinMain,他不認識。
解決方案:
1.試試看在[Project] --> [Settings] --> 選擇"Link"屬性頁,在Project Options中將/subsystem:console改成/subsystem:windows
2.或者用向導建立一個windows程序,把你的代碼粘過去覆蓋原來的WinMain函數
3.或者把你的WinMain改成main試試看
Ⅱ 請教在cygwin下編譯uboot出錯的問題
我在編譯一個軟體的源代碼時,無論是在CYGWIN上還是在純linux上編譯都make時總是通不過,是編譯平台的問題嗎?可是linux系統自帶的編譯器應該沒錯吧~,是我漏左了什麼嗎?可是makefile文件也應該沒錯的 那是ROCKBOX源代碼來的,我想把它編譯到電腦上來 它官網上說可以的 但是他上面某些都西還不懂,本人是學生,只想多學點東西 請高手指教,我應該看些什麼書,還需了解下什麼~~~請高手指教,謝了
arm-linux-gcc has EABI version 5,but target u-boot has EABI version 0 出現這樣的提示,個人覺得是交叉編譯器版本跟uboot版本不匹配,貌似交叉編譯器版本過高了。樓主可以嘗試更換一個較低版本的編譯器,或者找一個較高版本的uboot
Ⅲ 在prescan8.0中,運行不了prescan7.3的文件,怎麼辦
文件無法在系統正常運行,可能是系統參數與源文件不匹配,導致文件無法正常打開,也可能是文件損壞,造成無法使用
Ⅳ 簡單的C++問題
這是構造函數,在創建一個該類的對象時都會自動調用它(除非只是為它分配空間);同樣的,析構函數會在刪除一個類時自動調用。
希望能幫到你。
Ⅳ 寫程序時提示「python Syntax Error: invalid syntax」怎麼解決
寫程序時提示「pythonSyntaxError:invalidsyntax」往往是第一行的括弧沒有完全匹配,引發編譯器報錯,用戶需要對第一行和上一行代碼進行檢查調整即可。具體操作步驟如下。
1、比如這兩行程序,第一行的括弧沒有完全匹配,引發編譯器報錯。如下圖所示。
注意事項:
編譯器報錯的行數,用戶檢查往往發現不到錯誤,這時用戶只需要檢查報錯下一行即可解決問題。
Ⅵ 關於c++的操作符重載!很糾結的一個問題···
在第二次的程序中,main 函數中:
t2=t1+t0;共有兩個操作,第一是 + 操作符,返回一個 Time 類型的臨時變數,第二個是 = 操作符,將臨時變數的值引用傳給 t2。而臨時變數在離開作用域時,其數據就變的不可知,或許已經不是 Time 類型了,這時將它的值傳給 t2 顯然是不對的,編譯不會通過。
但是,把臨時變數加上常量標志 const 來引用,臨時變數的值就暫時常量化,而不會被修改,賦給 t2 也就很合理,當然可以編譯運行了。
不過,你把臨時變數做為參數傳遞,不論怎麼做手腳,這種方法也是不可取的!!!
Ⅶ 我在cmake配置opencv3.2的時候出現Error in configuration process,project files may be invalid
首先,我想說的是CMake的作用,每個編譯器在調用頭文件的時候都需要編譯器配置好讀取頭文件(*.h)對應的(*.c||*.cpp)的路徑,就像調用math.h你得告訴編譯器對應的math.c要去什麼地方尋找,但是新下載的OpenCV編譯器是不知道相應的頭文件還有lib文件要去哪裡找的,所以程序猿們可以有以下兩種方案:
1. 每次創建一個工程,找到調用文件的配置選項,然後手動添加,告訴編譯器cv.h在哪,各種庫文件(*.lib)文件在哪,當然既然涉及到系統的問題,少不了要去環境變數配置一下系統設置,不過配置環境變數僅僅用一次就可以了。
2. 為了省去每次創建工程都需要手動配置路徑的麻煩,用CMake可以將Opencv的相關文件在哪裡逗永久地地告訴編譯器,當然代價就是……失敗幾率很大(反正我總是配不好,一步出問題就會很蛋疼)
Ⅷ c與c++語言編譯器是如何識別關鍵字
根據編譯器的不同,有不同的識別方式,例如VC6.0使用系統內建關鍵字列表,如果用戶定義變數的時候使用了系統默認的關鍵字,則會在編譯的時候產生錯誤。
附上:
C語言的關鍵字共有32個,根據關鍵字的作用,可分其為數據類型關鍵字、控制語句關鍵字、存儲類型關鍵字和其它關鍵字四類。
1 數據類型關鍵字(12個):
(1) char :聲明字元型變數或函數
(2) double :聲明雙精度變數或函數
(3) enum :聲明枚舉類型
(4) float:聲明浮點型變數或函數
(5) int: 聲明整型變數或函數
(6) long :聲明長整型變數或函數
(7) short :聲明短整型變數或函數
(8) signed:聲明有符號類型變數或函數
(9) struct:聲明結構體變數或函數
(10) union:聲明聯合數據類型
(11) unsigned:聲明無符號類型變數或函數
(12) void :聲明函數無返回值或無參數,聲明無類型指針(基本上就這三個作用)
(2)控制語句關鍵字(12個):
A循環語句
(1) for:一種循環語句(可意會不可言傳)
(2) do :循環語句的循環體
(3) while :循環語句的循環條件
(4) break:跳出當前循環
(5) continue:結束當前循環,開始下一輪循環
B條件語句
(1)if: 條件語句
(2)else :條件語句否定分支(與 if 連用)
(3)goto:無條件跳轉語句
C開關語句
(1)switch :用於開關語句
(2)case:開關語句分支
(3)default:開關語句中的「其他」分支
D
return :子程序返回語句(可以帶參數,也看不帶參數)
3 存儲類型關鍵字(4個)
(1)auto :聲明自動變數 一般不使用
(2)extern:聲明變數是在其他文件正聲明(也可以看做是引用變數)
(3)register:聲明積存器變數
(4)static :聲明靜態變數
4 其它關鍵字(4個):
(1)const :聲明只讀變數
(2)sizeof:計算數據類型長度
(3)typedef:用以給數據類型取別名(當然還有其他作用
(4)volatile:說明變數在程序執行中可被隱含地改變
Ⅸ 在讀C++ 「預設實參」 時遇不懂
你調用screenInit(29)時,它其實是height=29,因為預設的height是24,但是你還是可以在調用時給它傳值的啊,這時你可能是想screenInit(29)表示width是29,這就沖突了,所以編譯器就讓你必須把所有含預設參數的都放在後面。
Ⅹ [root@localhost jxj]# ./configure --prefix=/usr/local/www/apr bash: ./configure: 沒有那個文件或目錄
configure: error: no acceptable C compiler found in $PATH
從這句來看,你缺少了編譯器(我覺得你安裝了編譯器,而只是PATH變數設置不對的可能性不大 ^o^)。沒有編譯器,源碼安裝是無法完成的。
你首先要安裝編譯器gcc。紅帽系列的,用yum。debian系列用apt-get
如果不知道與系統匹配的編譯器,redhat上用:
$> yum search gcc
查看gcc列表,再用
# yum install gcc-xxx
安裝你的gcc編譯器
debian系列的,自己查下