和邏輯錯誤的區別語法錯誤和邏輯錯誤都是些什麼錯

2021-03-04 07:52:26 字數 1519 閱讀 7611

1樓:

最大區別就是語法錯誤通不過編譯器的編譯,邏輯錯誤則能通過。具體的說就

內是語法錯誤的容意思是該錯誤違背了此種語言的基本規則,比如必須以分號結束語句的語言用點來結束。邏輯錯誤是指演算法上的錯誤。比如迴圈語句的結束條件沒有寫,語句能通過編譯,但執行後會發生死迴圈無法跳出的現象。

2樓:匿名使用者

因為形參已經bai

定義int*array了,指標偏移du不用zhi

加sizeof,直接array+i(編譯器自己會知道dao的)if(*(array+i*sizeof(int))>*(array+j*sizeof(int)))==》if(*(array+i))>*(array+j))其他類似內的你自容己改下

3樓:南街白班抽象

最大區別就是語法錯誤通不過編譯器的編譯

**中語法錯誤和邏輯錯誤的區別

4樓:學院派魚多多

一、編譯期通過不同:

(1)、語法錯誤,在程式設計環境下,會在編譯期被發現。

在編譯語言中,語法錯誤一定只在編譯期時出現,編譯器要所有的語法都正確,才能正確編譯。不過解釋型語言中的語法錯誤可能要到執行期才會出現,而且不一定容易區分語法錯誤及語義錯誤。

(2)、邏輯錯誤,編譯期不會發現邏輯錯誤。

二、錯誤表現不同:

(1)、語法錯誤,表現為編譯不通過。

(2)、邏輯錯誤,唯一表現就是錯誤的執行結果。

三、錯誤原因不同:

(1)、語法錯誤,拼寫錯誤、漏寫、多寫、不正確的算式等。

(2)、邏輯錯誤,語句中出現了差錯(比如公式寫錯)、演算法中的錯誤,甚至是選擇了錯誤的演算法。此外還有一些其它原因,如型別轉換錯誤、變數作用域錯誤、遺漏的**段、對問題或需求的理解有誤等等。

5樓:匿名使用者

最大區別就是語法

錯誤通不過編譯器的編譯,邏輯錯誤則能通過。

具體的說就是語法錯誤的意思是該錯誤違背了此種語言的基本規則,比如必須以分號結束語句的語言用點來結束。

邏輯錯誤是指演算法上的錯誤。比如迴圈語句的結束條件沒有寫,語句能通過編譯,但執行後會發生死迴圈無法跳出的現象。

c語言語法錯誤和語義錯誤有什麼區別,麻煩舉個例子

6樓:萌萌水月喵

語法錯誤可以看作是編碼出現了違反c語言規則的錯誤,一般編譯或者連結時,

都會報錯的。

而語義錯誤,也可以叫做邏輯錯誤,

也就是說你的**完全符合c語言的規範,不會出現編譯/連結的錯誤,但是,在邏輯上有錯誤。

舉個簡單的例子,

加入編一個**來統計int陣列a的成員總和,成員總數為n:

for(int i=0;i

sum=sum+a[i];

for(int i=0;i<=n;i++) //這裡多了一個i=n的取值,這是語義錯誤

sum=sum+a[i];

在C語言中什麼是語義錯誤c語言語法錯誤和語義錯誤有什麼區別,麻煩舉個例子

一般的程式錯誤,粗略一點分的話,可以大致分為語法錯誤和語義錯誤。語法錯誤可以看作是編碼出現了違反c語言規則的錯誤,一般編譯或者連結時,都會報錯的。而語義錯誤,也可以叫做邏輯錯誤,也就是說你的 完全符合c語言的規範,不會出現編譯 連結的錯誤,但是,在邏輯上有錯誤。舉個簡單的例子,加入編一個 來統計in...

修改病句歌詞中的語法錯誤,指出病因

1.老張請他喝酒,喝得少了老張不幹。原句前後不一致 不照應 人稱指代不明 2.家裡盤著兩條龍,它們是長江與黃河。還有最高的山,它是珠穆朗瑪峰兒 原句第一句缺主語。第二句,與前句結構不照應 第一句後一分句中 他 指代不明,應改為 老張請他吃頓飯,他喝少了老張不幹。第二句 家裡盤著兩條龍 不能作 是長江...

犯了邏輯錯誤的幽默笑話,求一個有關邏輯性問題的笑話,求各位幫忙

這個問題跟哲學聯絡不大。因為進行科學實驗已經預設了因果律和歸納法的正確性,這是大前提。這個專家的 錯誤 不在形式邏輯,而是沒有遵循歸納原則。割去腿固然 是 去除了聽覺器官,但同時也去掉了跑的器官,兩個實驗就出現了兩個影響因素,行不成對照,也就無從歸納 邏輯性錯誤 做事太極端,可以把蜘蛛的腳用與外界隔...