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];
因为数组初始化长度必须用常量,所以这边改成指针就可以根据输入值来做动态长度的数组。至于你这个程序是要干嘛的我没全部看完,只是帮你改掉报错而已。