把scanf("%f",students[i].weight);改成scanf("%f",&students[i].weight);。
把scanf("%d",students[i].years_old);改成scanf("%d",&students[i].years_old);。
把scanf("%d",students[i].score);改成scanf("%d",&students[i].score);。
‘贰’ c语言编译错误
因为你的a[6][6]这个数组没有初始化,也没有输入值,所以内存中就没有a数组的内容的地址,所以一运行就会出错啊,访问了不该访问的内存,所以就报错了。
‘叁’ 这个C编译错误提示什么意思。。。lvalue required as left operand of assignment
c语言 提示:lvalue required as left operand of assignment,是设置错误造成的,解决方法如下:
1、首先打开C语言编程软件,来编写一个程序。
‘肆’ 关于C语言在编译时常出现的错误有哪些
1、fatal error C1010: unexpected end of file while looking for precompiled header directive。
寻找预编译头文件路径时遇到了不该遇到的文件尾。(一般是没有#include "stdafx.h")
2、fatal error C1083: Cannot open include file: 'R…….h': No such file or directory
不能打开包含文件“R…….h”:没有这样的文件或目录。
3、error C2011: 'C……': 'class' type redefinition
类“C……”重定义。
4、error C2018: unknown character '0xa3'
不认识的字符'0xa3'。(一般是汉字或中文标点符号)
5、error C2057: expected constant expression
希望是常量表达式。(一般出现在switch语句的case分支中)
6、error C2065: 'IDD_MYDIALOG' : undeclared identifier
“IDD_MYDIALOG”:未声明过的标识符。
7、error C2082: redefinition of formal parameter 'bReset'
函数参数“bReset”在函数体中重定义。
8、error C2143: syntax error: missing ':' before '{'
句法错误:“{”前缺少“;”。
9、error C2146: syntax error : missing ';' before identifier 'dc'
句法错误:在“dc”前丢了“;”。
10、error C2196: case value '69' already used
值69已经用过。(一般出现在switch语句的case分支中)
11、error C2509: 'OnTimer' : member function not declared in 'CHelloView'
成员函数“OnTimer”没有在“CHelloView”中声明。
12、error C2511: 'reset': overloaded member function 'void (int)' not found in 'B'
重载的函数“void reset(int)”在类“B”中找不到。
13、error C2555: 'B::f1': overriding virtual function differs from 'A::f1' only by return type or calling convention
类B对类A中同名函数f1的重载仅根据返回值或调用约定上的区别。
14、error C2660: 'SetTimer' : function does not take 2 parameters
“SetTimer”函数不传递2个参数。
15、warning C4035: 'f……': no return value
“f……”的return语句没有返回值。
16、warning C4553: '= =' : operator has no effect; did you intend '='?
没有效果的运算符“= =”;是否改为“=”?
17、warning C4700: local variable 'bReset' used without having been initialized
局部变量“bReset”没有初始化就使用。
18、error C4716: 'CMyApp::InitInstance' : must return a value
“CMyApp::InitInstance”函数必须返回一个值。
19、LINK : fatal error LNK1168: cannot open Debug/P1.exe for writing
连接错误:不能打开P1.exe文件,以改写内容。(一般是P1.Exe还在运行,未关闭)
20、error LNK2001: unresolved external symbol "public: virtual _ _thiscall C……::~C……(void)"
连接时发现没有实现的外部符号(变量、函数等)。
function call missing argument list 调用函数的时候没有给参数。
member function definition looks like a ctor, but name does not match enclosing class 成员函数声明了但没有使用
unexpected end of file while looking for precompiled header directive 在寻找预编译头文件时文件意外结束,编译不正常终止可能造成这种情况
‘伍’ c语言helloworld代码是对的,但编译错误
写c语言的时候,如果代码没错,这只能说明语法没有出错,直接导致的结果就是能编译通过,并不意味着执行的结果就是正确的。影响c语言代码执行结果的因素非常多。
一、指针的不正确运用;
二、变量精度问题。char,int,unsigned int,long ,float等,如果变量精度使用不正确,也会影响运算结果;
三、运算符的应用不正确。例如除,取余的区别;
四、正负符号位;
五、运算符的优先级使用;
六、编译器不同。各种编译器也可能造成结果不一致;
C语言虽然是一门比较简单的语言,但是要掌握这些细节,其实并不容易。
‘陆’ c语言 编译错误
看红线指向的strings[seek]是一个char,而strcmp函数是连接字符串的,函数传参错误
‘柒’ c语言编译出错
#include<stdio.h>
int main()
{
int bjs, js, he ;
scanf("%d%d", &bjs, &js);
he = bjs + js;
printf("%d+%d=%d",bjs,js,he);
return 0;
}
‘捌’ c 编译提示错误
楼主你好。首先我说下你的函数第一行报错的问题。MAXLEN是你定义的一个宏,貌似不能把它作为形参(因为你已经把它定义成为宏)。你可以把后面一个形参改为int n,当然下面的MAXLEN也改为n,你只需要实参传进来的是MAXLEN就OK。
然后我说下你这个函数可能存在的问题:
函数貌似开始要用malloc函数开辟一段内存(记得函数执行完把它释放),因为没有开辟内存,s++操作可能不能执行。还有你返回的是s-t,我想你的本意是想记录输入的字符个数,并把它返回吧,如果前面指针操作有问题(没有开辟内存等引起的),那么这两个指针相减可能将被视为非法的。而你的函数返回值为int,可能会报错。
int getline(char *s,int n) /*这一行提示错误!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*/
{
int k;
s=(char *)malloc(sizeof(char)*100);
char *t;
t=s;
int c;
while(--n>0&&(c=getchar())!=EOF&&c!='\n')*s++=c;/*这一行错误!!!!!!!*/
if(c=='\n')*s++=c;
*s='\0';
k=s-t;
free(s);
return k;
}
我试了一下,你的程序改了MAXLEN和这个都没有报错,但是也没执行结果。你再看看吧,一家之言,仅供参考。希望对你有帮助。
‘玖’ C语言编译报错
#include <stdio.h>
#include <string.h>
int main()
{
int gg(int i);
int i;
while(1){
i=0;
printf(" 1.查看历史日程表\n");
printf(" 2.输入新的日程表\n");
printf(" 3.查看已完成的日程表\n");
printf(" 4.查看未完成的日程表\n");
printf(" 5.退出登录\n");
printf(" 请选择相应序号: ");
scanf("%d",&i);
if(i==5){
break;
}
gg(i);
printf("\n");
printf("\n");
printf("\n");
}
}
int gg(int i){
int aa();
int bb();
int cc();
int dd();
switch(i){
case 1:
aa();break;
case 2:
bb();break;
case 3:
cc();break;
case 4:
dd();break;
}
}
int aa(){
FILE*fp;
int length=1000;
char str[1001];
if((fp=fopen("11s.txt","r"))==NULL){
printf("无文件");
return 0;
}
while(fgets(str,length,fp)!=NULL){
printf("%s",str);}
return 1;
fclose(fp);
}
int bb(){
FILE*fp;
char str[400];
printf("内容如下:\n");
scanf("%s",str);
if((fp=fopen("11s.txt","a+"))==NULL){
printf("文件不存在");
return 0;
}
fputs("\n",fp);
fputs(str,fp);
printf("加入成功");
fclose(fp);
return 1;
}
int cc(){
FILE*fp;
int length=1000;
char str[1001];
printf("内容如下:\n");
if((fp=fopen("11s.txt","r"))==NULL){
printf("无文件");
return 0;
}
while(fgets(str,length,fp)!=NULL){
if(strstr(str,"已完成")!=NULL){
printf("%s",str);
}
}
fclose(fp);
return 1;
}
int dd(){
FILE*fp;
int lenght=1000;
char str[1001];
printf("内容如下:\n");
if((fp=fopen("11s.txt","r"))==NULL){
printf("无文件");
return 0;
}
while(fgets(str,lenght,fp)!=NULL){
if(strstr(str,"未完成")!=NULL){
printf("%s",str);
}
}
fclose(fp);
return 1;
}
‘拾’ 如何快速查找C语言编译时的错误
1、首先,我们启动编译软件程序,今天我们以VC++6.0为例。
注意事项:
编译语言是一种以编译器来实现的编程语言。它不像直译语言一样,由解释器将代码一句一句运行,而是以编译器,先将代码编译为机器码,再加以运行。理论上,任何编程语言都可以是编译式,或直译式的。它们之间的区别,仅与程序的应用有关。