c語言error
① c語言中#error怎麼用
#error是使編譯器產生一個錯誤,在你的程序中上一句#ifndef PI判斷為真,於是編譯器就執行了#error這句,導致編譯報錯
② c語言數據結構里的false、error、overflow、infeasible用法好像啊。分別用在什麼地方啊
overflow一般用於exit的參數中,比如創建指針時,一般判斷一下內存是否分配成功,不成功一般調用returnexit(overflow);
infeasible其意思是不可行的,一般在某個判斷中,如果什麼什麼不可行,就會returninfeasible例如:求後繼元素時,如果是最後一個元素,則求其後繼是不可行的,此時就會returninfeasible;
很多函數的返回類型都是Status,這里Status是用typedef定義的intl類型即:typedefintStatus;在這樣的函數中根據不同情況返回ture或falseok或error。
StatusListEmpty(SqListL)
{
//若L為空表,則返回TRUE,否則返回FALSE
if(L.length==0)
{
returnTRUE;
}
else
{
returnFALSE;
}
}
StatusGetElem(SqListL,inti,ElemType*e)
{
//用e返回L中的第i個元素的值,1=<i<=ListLength(L)
if(i<1||i>L.length)
{
returnERROR;
}
*e=*(L.elem+i-1);
returnOK;
}
(2)c語言error擴展閱讀
C語言append()方法為切片添加元素
Go語言的內建函數append()可以為切片動態添加元素。 每個切片會指向一個底層數組,這個數組能容納一定數量的元素。
當底層數組不能容納新增的元素時,切片就會自動按照一定的策略進行「擴容」,此時該切片指向的底層數組就會更換。「擴容」操作往往發生在append()函數調用時。 舉個例子:
③ c語言error c2146
g.cpp(10)
:
error
告訴你
程序g.cpp
的
第十行有語法錯誤。
看第十行:
printf("a=%d,b=%d,c+%d"a,b,c,);
a,b,c,
--
a
前面少了逗號,c
後面多了逗號。
要改成:
printf("a=%d,b=%d,c=%d",a,b,c);
=======================================
程序運算前,a,b,c
應當賦初值.
例如:
a=1;
b=2;
c=3;
======================
d=a,a=b,b=c,c=d;
語句要用分號分隔:
d=a;
a=b;
b=c;
c=d;
④ C語言 error C2059: 語法錯誤 : ")"
你用#define b定義了一個宏,但沒有定義它的展開代碼。當預處理器對你的源碼進行預處理時,會依次遇到如下的宏調用:
1、b+1;經處理後變成了+1;沒有語法錯誤;
2、printf("%d\n",b);經處理後變成了printf("%d\n",);有語法錯誤,這就是問題所在。
可將#define b定義成#define b 100(或其它整數),來避免這個錯誤。
⑤ C++編程中這個ERROR是什麼意思。。求高人解答。。
類型定義不當,除數為0,指針使用錯誤。
error命令是C++語言的預處理命令之一,當預處理器預處理到error命令時將停止編譯並輸出用戶自定義的錯誤消息。
int*re()
{
int*a;
a=newint[10];
for(inti=0;i<10;i++)
a[i]=i;
returna;
}
(5)c語言error擴展閱讀
error
用法示例:
/*
*檢查編譯此源文件的編譯器是不是C++編譯器
*如果使用的是C語言編譯器則執行#error命令
*如果使用的是C++編譯器則跳過#error命令
*/
#ifndef__cplusplus
#error親,您當前使用的不是C++編譯器噢!
#endif
#include<stdio.h>
intmain()
{
printf("Hello,World!");
return0;
}
⑥ c語言錯誤error
#include<stdio.h>
#include<stdlib.h>
#definemaxsize100
typedefchardatatype;
typedefstruct/*定義*/
{
datatypedata[maxsize];
inttop;
}seqstack;
seqstack*init_seqstack(seqstack*s)/*初始化*/
{
s=(seqstack*)malloc(sizeof(seqstack));
s->top=-1;
returns;
}
intempty_seqstack(seqstack*s)/*判棧空*/
{
if(s->top=-1)return1;
elsereturn0;
}
datatypeget_seqstack(seqstack*s)/*取棧頂元素*/
{
if(s->top==-1)printf("棧空,取元素失敗 ");
elsereturn(s->data[s->top]);
}
seqstack*push_seqstack(seqstack*s,datatypex)/*入棧*/
{
if(s->top==maxsize-1)//分號去掉
{
printf("上溢 ");
return0;
}
else
{
s->top++;
s->data[s->top]=x;
returns;
}
}
seqstack*pop_seqstack(seqstack*s,datatypey)/*出棧*/
{
if(s->top<0)
{
printf("下溢 ");
return0;
}
else
{
y=s->data[s->top];
s->top--;
returns;
}
}
voidshow(seqstack*s)
{
while(s->top>=0)
{
printf("%c",s->data[s->top--]);
}
printf(" ");
}
voidmain()
{
intsu;
seqstack*s;
charx,y;
while(1)
{
printf("制空表:1判棧空:2取棧頂元素:3入棧:4出棧:5顯示棧中元素:6 ");
scanf("%d",&su);
switch(su)
{
case1:
s=init_seqstack(s);
break;
case2:
empty_seqstack(s);
break;
case3:
get_seqstack(s);
break;
case4:
getchar();
printf("請輸入入棧字元:");
scanf("%c",&x);
s=push_seqstack(s,x);
break;
case5:
s=pop_seqstack(s,y);
break;
case6:
show(s);
break;
}
}
}
⑦ C語言編譯器上為什麼我使用#error錯誤
樓上說的我大部分贊同,最後一項,不同意,標准c
c++要求使用int類型返回值,因為正常的程序main函數必須有個返回值作為退出狀態。
翻譯:「警告main函數應該有個返回值,假設返回void類型」。
第13行的main函數前面加上類型int。
⑧ c語言錯誤怎麼辦
如果發生錯誤的文件是由其他的C代碼文件添加進入當前工程而引起的,則Alt+F7進入當前工程的 Settings,選擇C/C++選項卡,從Category組合框中選中Precompiled Headers,選擇Not Using Precompiled headers。確定即可。
⑨ c語言作業,總是有一個error
這個程序中至少有四處錯誤,報一處錯誤是有點奇怪
1、scanf("%f",&a,&b,&c)應該是scanf("%f%f%f",&a,&b,&c);
2、if("d<0");應該是if(d<0)後面注意一定是沒有分號的
3、你的x本來聲明的時候就不是數組,當然不用能x[1]x[2]這種寫法的,簡單點你可以在上面聲明的時候寫成float x1,x2,然後後面賦值的時候直接用x1和x2,相當的printf("x1=%f x2=%f",x1,x2);
⑩ C語言,說有個error. 哪錯了啊
你好!
你的代碼中存在三處錯誤
1. 第一行最前面缺了個#
2.第七和八行末尾缺了封號
3.第八行return和0之間要空一格
如果我的回答幫到了您,請採納我的回答,謝謝!