當前位置:首頁 » 編程軟體 » 編譯後發現缺少文字

編譯後發現缺少文字

發布時間: 2022-08-09 06:24:00

⑴ 為什麼我用gcc編譯的.exe文件中文字顯示不出來,是我代碼有問題嗎 #inc

不怕麻煩的話呢,可以調整#include結構來讓各c文件相連。。
建議呢,把類型與函數的聲明整理到特定的.h文件中,然後用#ifndef來使其只被包含一次,然後,在用到其它文件中實現的函數的時候將相應的.h文件include進來就好。這樣呢,編譯的時候可以單個文件逐一編譯:
gcc -c main.c -o main.o
gcc -c del.c -o del.o
gcc -c insert.c -o insert.o
參數-c意思是只編譯不連接,-o是名命輸出文件。
全部編譯成.o文件無誤後,再將所有的.o文件相連:
gcc main.o del.o insert.o -o prog
就可以生成prog了。

然後舉個例子說明處理.h文件:
比如這個create.c。裡面定義了一個struct和一個函數。那麼就可以寫create.h如下:

#ifndef __CREATE_H__
#define __CREATE_H__
struct student
{
long num ;
float score;
struct student *next;
};
struct student *creat(void);
#endif

然後呢,因為student這個struct在這個.h文件里已經聲明了,所以create.c里只要寫#include "create.h",而在用到這個struct或者這個函數的場合,也只要這樣簡單一句就可以了。而.h文件開頭的#ifndef可以保證同一個h文件不會被多次包含。當然,如果編譯器支持的話,用#pragma once也許會比#ifndef更省事一些。

⑵ 易語言靜態編譯成EXE文件後到別的電腦運行無法找到字或圖

你確定是無法找到字或圖?靜態編譯的話不應該。直接編譯的可能會缺少支持庫,但是靜態編譯應該不是缺少「字和圖」吧。


你的字和圖可能指的是字體和保存的圖片。如果到其他電腦沒法顯示的話請先確認一下幾點:

  1. 字體未安裝在運行的電腦上,圖使用的是路徑載入,你的圖並未復制到運行電腦中相同的路徑

  2. 易語言編程系統出現bug,你使用的可能是破解版。

  3. 動態載入字體或動態載入圖片路徑不對或未復制到運行電腦中相同的路徑

⑶ wps 編譯錯誤缺少標識符

文件格式不對。在wps文檔中如果輸入的文件格式不對,就會導致在編譯的過程中,生成全局唯一標識符文的時候出錯,提示「編譯錯誤缺少標識符」。解決辦法:從新將文件保存為uif-8bom格式,保證編譯文件格式統一即可。

⑷ 麻煩高手糾正一下我這段vb代碼哪裡寫錯了,編譯時一直提示 缺少字元串常數 整段代碼在問題補充里

你用了好多中文全形符號,所以大量出錯,代碼修改如下:
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Dim i As Integer
Private Sub Command1_Click()
Me.WindowState = 1
Timer1.Enabled = True
End Sub
Private Sub Form_Load()
Form1.Caption = ″記事本自動保存″
Text1.Text = ″″
Text1.Text = 1
Shell "notepad.exe", vbNormalFocus '打開記事本,並使之成為當前窗口
Timer1.Enabled = True '激活時鍾控制項
Form1.WindowState = 0
End Sub
Private Sub Timer1_Timer()
If FindWindow("Notepad") = vbNullString Then
Dim b As Integer
b = UpDown1.Value
i = i + 1
If i Mod b / 60 = 0 Then '設置自動存檔的時間間隔為分鍾,可以根據需要進行更改。
SendKeys "%FS", True '調用文件菜單的保存命令,顯示文件保存對話框
End If
Else
Unload Me
End If
End Sub

⑸ vbscript 編譯器錯誤 缺少文字常數

If(filename == "PL5FI0006CNAPo" & fff.size < 5*1024KB) '
Then fff.Delete '

這句寫錯了,我感覺應該改為
If(filename = "PL5FI0006CNAPo" and fff.size < 5*1024*1024) Then fff.Delete '

⑹ 缺少字體文件,系統不能正常運行,是怎麼回事

真的很正常,linux下經常出現亂碼問題,這個跟編輯器的編碼有關,至於wps,,你進wps的官方論壇,他們說這個問題很多次: 一下是官方的說明: 看濤哥講故事講的起興,正好周末,我也上來講講故事哈。 隨便挑了個主題,就講「無盡混亂的編碼吧」。 我想只要是玩linux的人,多多少少都遇到過亂碼的問題吧,否則還真不能叫linux黨。 wps運行時用的是什麼編碼? wps運行時採用的是utf16編碼,我相信在windows這是很多程序的選擇。 但是坑爹的gcc竟然,它竟然只支持utf32編碼?????gcc的wchar_t竟然是4位元組的,4位元組的!!!! 幸虧那個坑爹的c++0x新標准被我們趕上了,支持了所謂u"str"和U"str"新格式。u就是utf16,U就是utf32。 so,我們只能選用了gcc4.5作為我們的編譯器,並且編寫了一個宏__X(str),在windows為L #str,linux下為u #str。 (這也是很多朋友抱怨libstdc++版本過高的罪惡根源) 然後我們把工程里所有的L"xxx"改為了__X("xxx"),把工程里的所有wchar_t改為WCHAR// 囧,改的我們手腳發麻啊。 但是好景不長,沒過兩天就讓我們知道,c++標准委員會絕對不是吃素的。這幫天煞的傢伙不把c++搞的反人類就不爽。 strcmp是單位元組的,wcscmp是4位元組的,那兩位元組的是啥?????沒有!上帝啊: c++0x是的,c++0x不是c0x。。。。。so,char16_t是沒有c庫支持的。這叫神馬utf16支持啊。 一不做二不休,我們再把所有的字元串c標函數又實現了一遍,於是乎有了xstrcmp,xstricmp,xstrncmp....。然後繼續改到手發麻。。。。 但是c艹還是覺得我們太悠閑了,so,下一句台詞是: c++0x不是c0x,也不是c++。。。。是的,我們目前發現char16_t除了std::basic_string<char16_t>能鏈接通過以外沒有發現系統庫例子。 連正則表達式都不能用,// 朋友你想用?不好意思,我們還沒實現,你再等等吧。。。。。 。。。。我感覺我們只剩下半管血了。c++標准委員會還是覺得意猶未盡啊。 在不和c兼容 & 半成品實現上, c++0x下一個坑我們的是char16_t,這個類型本身。對,他是一個類型,不是typedef unsigned short chart16_t。 so,工程里充斥滿了QString::fromUtf16((WCHAR *)__X("what a bad day!!!")); 到最後我們終於受不了了,把__X的定義改成了 ((unsigned short *)(u #str))。 then....__X('x') 和 __X("adsf") __X("asdf") 和 WCHAR str[] = __X("asdf") 都順利歇菜了。阿門 然後我們血條紅了。。。 wps的源代碼用的是什麼編碼? 這個不用想都知道,wps是從vc6年代過來的工程,vc6又不支持utf8,當然是ansi編碼(GBK)的了。 移植到linux的時候,沒多久我們就碰到了編碼問題。 主要是2種情況。 1 gcc按照utf-8編碼解釋gbk文件,導致\n回車被吞。這個時候一旦使用\\形式的備注,編譯就悲劇了。(/**/形式只要在*/前加入足量的空格就沒問題) 2 字元串中本身存在非ascii字元。這種情況雖然不多,卻是更加棘手。 於是在linux分支上,我們就將一部分文件轉為了utf8。 但這是做了幾天後我們就發現不對勁了。去vc上做了個實驗,果然vc罷工了。 最後我們根據實驗結果得出以下結論: vc支持ansi、utf8+bom、utf16+bom,gcc支持utf8、utf8+bom 於是我們經過商議後,得出結論: 把所有工作代碼轉為utf8+bom,以適應將來跨平台 步驟如下: 1 編寫svn鉤子,以進行強制編碼檢查 2 將主幹轉為utf8+bom 3 改寫svn客戶端,使得支持跨編碼代碼合並 4 所有的分支和主幹合並後,重新拉取分支後變為utf8分支。 於是乎我很happy的將主幹轉為了utf8+bom,結果,結果編不過去了。~_~ 然後才發現,天煞的windows資源編譯器只支持ansi、utf16+bom 我勒個去啊,一交集,發現沒答案了。 幸虧那部分文件,沒包含非中文不行的字元,俺直接給那部分文件中文備注全給刪除了,改成了英文備注,OK,過了 看了這個計劃,大家就知道最頭大的在3和4兩個步驟。 其他分支還好,文件編碼基本都是ansi的,合並的時候基本沒壓力。 linux分支的文件有很多都是utf8沒bom的。 然後俺又做了搓事啊,悲劇svn客戶端沒改好,編碼猜測部分代碼除了BUG。然後。。。。。 然後俺就拉著一幫小弟,人肉fixup啊。。。。。。。。。。

⑺ 用閃客精靈反編譯得到fla文件後用flash8打開,但是提示缺少字體,可是缺少的字體卻顯示亂碼,求高手幫忙

這個有點難度,你只能用相近的字體去代替。或去下載一些字體試試。你可以在反編譯之前看下FLASH播放的是什麼字體,這樣你就有針對性去下載安裝到你電腦里就可以了
具體位置是c:\windows\fonts\

⑻ 求教編譯器錯誤 800a0400'缺少語句

ActiveServerPages,ASP0126(0x80004005)-->找不到包含文件 (0x80040E21)-->sql語句出錯(數據類型不匹配或表名(欄位名)錯誤或表處於編輯狀態,或表不存在於conn打開的資料庫中) (0x80040E14)-->sql語句出錯(欄位名錯誤,或數據類型不匹配) (0x80040E07)-->sql語句出錯(要插入或更新的欄位的類型與變數數據類型不匹配) (0x80040E57)-->sql語句出錯(要插入或更新的數據溢出) (0x80040E10)-->sql語句出錯(update欄位名或要更新的數據類型錯誤) (0x80004005)-->sql語句出錯(要插入或更新的欄位的數值不能為空值) (0x80004005) -->打開資料庫出錯,沒有在指定目錄發現資料庫 (0x80040E37)-->沒有發現表 MicrosoftVBscript運行時錯誤(0x800A000D)-->錯誤引用rs變數(rs對像已關閉或未定義) MicrosoftVBscript運行時錯誤(0x800A01C2)-->vbscript腳本錯誤(vbscript語句出錯) MicrosoftVBscript運行時錯誤(0x800A0006)-->vbscript腳本錯誤(溢出錯誤) MicrosoftVBscript編譯器錯誤(0x800A040E)-->缺少loop MicrosoftVBscript編譯器錯誤(0x800A03EA)-->缺少if或endif MicrosoftVBscript編譯器錯誤(0x800A03EE)--> 語句未結束(缺少")") MicrosoftVBscript編譯器錯誤(0x800A03F6)-->if語句出錯(缺少endif) MicrosoftVBscript運行時錯誤(0x800A005B)-->缺少set MicrosoftVBscript運行時錯誤(0x800A0005)-->變數未定義 MicrosoftVBscript編譯器錯誤(0x800A03F9)-->if語句缺少then MicrosoftVBscript編譯器錯誤(0x800A0411)-->dim語句定義錯誤 MicrosoftVBscript編譯器錯誤(0x800A0408)-->sql語句錯誤(?????????????????) Microsoft VBScript 運行時錯誤 (0x800A01B6)錯誤原因:set rs=server.create......你少了 set ADODB.Recordset(0x800A0BB9)-->sql語句出錯(sql語句或conn語句未定義或對一個rs屬性進行賦值時發生錯誤) ADODB.Recordset(0x800A0CC1)-->rs對像出錯(rs對像本身不存在或錯誤地引用了一個不存在的欄位名) ADODB.Recordset(0x800A0BCD)-->rs對像出錯(記錄集中沒有記錄卻對記錄集進行操作) ADODB.Recordset(0x800A0E78)-->rs對像出錯(記錄集不存在,缺少rs.open語句) ADODB.Recordset(0x800A0CC1) -->rs對像出錯(引用了一個不存在的欄位名) ADODB.Recordset(0x800A0E7D)-->conn定義錯誤 ADODB.Recordset(0x800A0CB3)-->資料庫以只讀方式打開,無法更新數據 如果 VBScript 語句結構違反了一個或多個 VBScript 腳本語言語法規則,就會產生 VBScript 語法錯誤。 錯誤通常在執行程序前,編譯程序時產生。 以下是53個語法錯誤: 錯誤編號 描述 十進制 十六進制 說明 1001 800A03E9 內存不足 1002 800A03EA 語法錯誤 1003 800A03EB 缺少逗:地 1005 800A03ED 需要 '(' 1006 800A03EE 需要 ')' 1007 800A03EF 缺少逗]地 1010 800A03F2 需要標識符 1011 800A03F3 需要 '=' 1012 800A03F4 需要 'If' 1013 800A03F5 需要 'To' 1014 800A03F6 需要 'End' 1015 800A03F7 需要 'Function' 1016 800A03F8 需要 'Sub' 1017 800A03F9 需要 'Then' 1018 800A03FA 需要 'Wend' 1019 800A03FB 需要 'Loop' 1020 800A03FC 需要 'Next' 1021 800A03FD 需要 'Case' 1022 800A03FE 需要 'Select' 1023 800A03FF 需要表達式 1024 800A0400 需要語句 1025 800A0401 需要語句的結束 1026 800A0402 需要整數常數 1027 800A0403 需要 'While' 或 'Until' 1028 800A0404 需要 'While,'、 'Until,' 或語句未結束 1029 800A0405 需要 'With' 1030 800A0406 標識符太長 1031 800A0407 無效的數 1032 800A0408 無效的字元 1033 800A0409 未結束的串常量 1034 800A040A 未結束的注釋 1037 800A040D 無效使用關鍵字 'Me' 1038 800A040E 'loop' 沒有 'do' 1039 800A040F 無效 'exit' 語句 1040 800A0410 無效 'for' 循環控制變數 1041 800A0411 名稱重定義 1042 800A0412 必須為行的第一個語句 1043 800A0413 不能賦給非Byval參數 1044 800A0414 調用 Sub 時不能使用圓括弧 1045 800A0415 需要文字常數 1046 800A0416 需要 'In' 1047 800A0417 需要 'Class' 1048 800A0418 必須在一個類的內部定義 1049 800A0419 在屬性聲明中需要 Let , Set 或 Get 1050 800A041A 需要 'Property' 1051 800A041B 參數數目必須與屬性說明一致 1052 800A041C 在類中不能有多個預設的屬性/方法 1053 800A041D 類初始化或終止不能帶參數 1054 800A041E Property Let 或 Set 至少應該有一個參數 1055 800A041F 不需要的 'Next' 1056 800A0420 只能在 『Property』 或 』Function』 或 』Sub』 上指定 』Default』 1057 800A0421 說明 'Default' 必須同時說明 'Public' " 1058 800A0422 只能在 Property Get 中指定 'Default' VBScript 運行時錯誤 如果 VBScript 腳本執行系統無法實施的操作,則會產生 VBScript 運行時錯誤。只有在運行腳本、為變數表達式賦值或 分配內存時,才會產生 VBScript 運行時錯誤。 以下是65個運行時錯誤: 錯誤編號 描述 十進制 十六進制 說明 5 800A0005 無效過程調用或參數 6 800A0006 溢出 7 800A0007 內存不足 9 800A0009 下標越界 10 800A000A 該數組為定長的或臨時被鎖定 11 800A000B 被零除 13 800A000D 類型不匹配 14 800A000E 字元串空間溢出 17 800A0011 無法執行請求的操作 28 800A001C 堆棧溢出 35 800A0023 未定義 Sub 或 Function 48 800A0030 載入 DLL 錯誤 51 800A0033 內部錯誤 52 800A0034 壞文件名或數 53 800A0035 文件未找到 54 800A0036 壞文件模式 55 800A0037 文件已經打開 57 800A0039 設備I/O錯誤 58 800A003A 文件已經存在 61 800A003D 磁碟空間已滿 62 800A003E 輸入超出文件尾 67 800A0043 文件太多 68 800A0044 設備不可用 70 800A0046 許可權禁用 71 800A0047 磁碟未准備好 74 800A004A 不能用不同的驅動器重新命名 75 800A004B 路徑/文件訪問錯誤 76 800A004C 路徑未找到 91 800A005B 未設置對象變數 92 800A005C For 循環未初始化 94 800A005E 非法使用 Null 322 800A0142 不能建立所需臨時文件 424 800A01A8 需要對象 429 800A01AD ActiveX 部件無法創建對象 430 800A01AE 類不支持自動化 432 800A01B0 在自動化操作中未找到文件名或類名 438 800A01B6 對象不支持該屬性或方法 440 800A01B8 Automation錯誤 445 800A01BD 對象不支持此操作 446 800A01BE 對象不支持指定的參數 447 800A01BF 對象不支持當前的區域設置 448 800A01C0 未找到命名參數 449 800A01C1 參數不可選 450 800A01C2 錯誤的參數個數或無效的參數屬性值 451 800A01C3 對象不是一個集合 453 800A01C5 指定的dll函數未找到 455 800A01C7 代碼源鎖錯誤 457 800A01C9 這個鍵已經是本集合的一個元素關聯 458 800A01CA 變數使用了一個 VBScript 中不支持的自動化(Automation)類型 462 800A01CE 遠程伺服器不存在或不能訪問 481 800A01E1 無效圖片 500 800A01F4 變數未定義 501 800A01F5 違法的分配 502 800A01F6 腳本對象不安全 503 800A01F7 對象不能安全初始化 504 800A01F8 對象不能安全創建 505 800A01F9 無效的或不合格的引用 506 800A01FA 類未被定義 507 800A01FB 發生異常 5016 800A1398 需要正則表達式對象 5017 800A1399 正則表達式中的語法錯誤 5018 800A139A 錯誤的數量詞 5019 800A139B 在正則表達式中需要 ']' 5020 800A139C 在正則表達式中需要 ')' 5021 800A139D 字元集越界 32811 800A802B 元素未找到

⑼ 為什麼linux 編譯總是提示缺少文件,文件明明存在

Software Requirements
=================
Libraries to compile SpaceZero:

libgtk2.0-dev
libglib2.0-dev
libopenal-dev
libalut-dev
libvorbis-dev

所以,如果你缺少編譯需要的文件,那麼請先安裝上面的軟體包。

我只另外安裝了兩個,命令如下:
sudo apt-get install libopenal-dev libalut-dev

安裝軟體包後,/usr/include/AL目錄下會有這些文件:
al.h
alc.h
alut.h

你編譯就應該不會出錯了。

⑽ 程序編譯出錯,缺少類型說明符

聲明時使用的類型沒有定義。

可能是缺少包含了頭文件。要麼找到定義該類型的地方,要麼自己定義一下, 比如PVOID64,就在用到PVOID64的前面
typedef long long PVOID64;
即可

熱點內容
解壓到當前文件夾右鍵 發布:2024-04-26 03:57:08 瀏覽:979
html5android教程視頻下載 發布:2024-04-26 03:09:59 瀏覽:867
伺服器的描述是什麼 發布:2024-04-26 03:08:32 瀏覽:394
個人加密 發布:2024-04-26 03:01:23 瀏覽:521
linuxusbgadget 發布:2024-04-26 02:52:54 瀏覽:304
我的世界空島世界伺服器地址 發布:2024-04-26 01:39:08 瀏覽:248
尼爾機械紀元加密 發布:2024-04-26 01:37:11 瀏覽:868
在控制台輸出sql語句 發布:2024-04-26 01:08:12 瀏覽:432
動畫java 發布:2024-04-26 01:02:40 瀏覽:12
得力文件夾5302 發布:2024-04-26 00:21:32 瀏覽:91