ltc2057
① 求助。C語言求平均數編譯錯誤的原因
float sum(int i,int j,float a[i][j])
數組不能動態定義的,你是想定義動態數組吧?
這個函數你都沒有用到的,如果要使用動態定義的話恐怕只能用new分配,然後傳給函數,不能直接這么定義參數的。
float sum(int i, int j, float** a); //這么定義
使用的時候
int i = 10, j = 10;
float **p;
p = new int*[i];
for(int k = 0; k < i; k++)
{
p[i] = new int[j];
}
sum(i, j, p);
② C語言 const size_t BIG=100與數組int Array[BIG]無法響應的問題 請多指點!
數組大小必須在定義時使用常量確定。SMALL盡管是只讀的,但他並非常量,仍然是變數,所以不能用於聲明數組。可以用#define宏定義代替。
③ 冒泡排序 error C2057: 應輸入常量表達式
以下是C語言中對數組的定義規則:
在C語言中使用數組必須先進行定義。一維數組的定義方式為:
類型說明符 數組名 [常量表達式];
其中,類型說明符是任一種基本數據類型或構造數據類型。
數組名是用戶定義的數組標識符。
方括弧中的常量表達式表示數據元素的個數,也稱為數組的長度。
注意:不能在方括弧中用變數來表示元素的個數,但是可以是符號常數或常量表達式。
正確的示例:
#define FD 5
main(){
int a[3+2],b[7+FD];
}
錯誤的例子:
main() {
int n=5;
int a[n];
}
解釋:本例中用了變數來定義數組個數,應直接定義為:int a[5]
你的代碼中也是一樣,應改為:int A[10]=。。。
要不就在外邊定義一個宏,在代碼中引用。
#define N 10
main(){
int a[N]=。。。
}
④ VC6.0編譯錯誤c2057 c2466 c2133
注意編譯是 hello.cpp ,你貼出代碼 是hello.cpp 嗎?嚴重懷疑。
可能 是 你自己新建個文件寫的代碼;不是在原來的 hello.cpp上進行的修改。
解決:要麼把自己的代碼粘到 hello.cpp 上;
要麼把自己的文件加到項目中,把 hello.cpp從項目中移除
⑤ C++編程問題,求矩陣的乘法。急!
int m,k,n;
int A[m][k];
int B[k][n];
int C[m][n];
這樣定義是不可以的
在c中,數組的長度必須是固定的常量,而不能是變數,這個在數組的開始應該是說過的
道理
在c中,程序運行開始的時候,會為變數申請內存空間,如果不知道申請空間的大小,是不可以的
如果不知道數組的長度,也就是說不知道數組要佔多少內存空間,是沒辦法運行程序的
⑥ ltc2057hv多出來的GRO引腳的功能,及具體使用方法
多出來的是GRD(guard)引腳,是用來在兩個輸入端外面畫一個保護環(guard ring),防止輸入端通過PCB板向電源軌泄露電流用的,由於這類運放的輸入偏置電流ib很小,所以這種泄露會大大降低運放的性能。
沒有這兩個引腳的2057在pcb板上的輸入偏置電流會較大,但如果在低輸入阻抗的輸入條件下則區別不大。
在datasheet的第21頁,Leakage Effect一節里詳細說明了這兩個引腳的用法。
⑦ Minesweeper.cpp(9) : error C2057: expected constant expression
數組定義時的下標不能為變數,而且定義必須要在前面,也就是說定義的前面不能對程序進行運算
就是說:
chara[n][x]這里的n和x如果都被定義過,會出錯,沒被定義過也會出錯(←廢話.....)數組*定義*時的下標不能為變數,就像你寫的那樣想要這樣你要學學動態地申請空間(簡單~)你如果想這樣寫,必須這樣:
#include<stdio.h>
#include<stdlib.h>
intmain(void)
{
inti,j;
int*p=NULL;
scanf("%d%d",&i,&j);
p=(char*)malloc(i*j);
if(0==p)
exit(-1);
return0;
}
可以把p當數組名,i/j是行數,列數.注意,這個代碼不能用作其它數據類型,我寫的就是char
VC++6.0環境
⑧ 似乎是二維數組的定義出問題了
a[n][n]={0},b[n][n]={0},賦值好像不對,靜態數組才默認補0吧
還有是不是因為b[][]是整型數組而你裡面的東西是符號的原因?
⑨ c++讀取某文件行數後用這個數聲明數組,聲明出錯,請教如何改, error C2057: expected constannt express
聲明數組下標必須是常數值。可以動態分配內存,使用new
⑩ temp.cpp(8) : error C2057: 應輸入常量表達式 temp.cpp(8) : error C2466: 不能分配常量大小為 0 的數組
第8行int noip[l]={};改成
int *noip = new int[l];
因為數組初始化長度必須用常量,所以這邊改成指針就可以根據輸入值來做動態長度的數組。至於你這個程序是要幹嘛的我沒全部看完,只是幫你改掉報錯而已。