| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1427 人关注过本帖
标题:出现error C2106: '=' : left operand must be l-value的原因
只看楼主 加入收藏
狮子。
Rank: 2
来 自:湖北
等 级:论坛游民
帖 子:64
专家分:58
注 册:2010-8-1
结帖率:88.89%
收藏
已结贴  问题点数:20 回复次数:2 
出现error C2106: '=' : left operand must be l-value的原因
程序代码:
#include<stdio.h>
int day_of_year(int (*day_tab)[13],int year,int month,int day)
{
    int i;
    int leap;
    leap=(year%4==0&&year%100||year%400=0);//此句错误......
        for(i=0;i<month;i++)
        day+=day_tab[leap][13];
        return(day);
}
void main()
{
    int day_tab[][13]={{0,31,28,31,30,31,30,31,31,30,31,30,31},
                        {0,31,29,31,30,31,30,31,31,30,31,30,31}};
    printf("%d",day_of_year(day_tab,1999,9,9));
}
运行时出现如题的问题,在网上找到相关的说法就是不能将一个常量赋给另一个常量,可是我等式左边的leap是我定义的整形变量啊,这是怎么回事啊,求助大家啊~
搜索更多相关主题的帖子: operand left 
2010-08-07 16:28
安普留香
Rank: 2
等 级:论坛游民
帖 子:77
专家分:62
注 册:2010-5-17
收藏
得分:20 
leap=(year%4==0&&year%100||year%400=0);
注意最后year%400=0
应该是==
2010-08-07 16:37
狮子。
Rank: 2
来 自:湖北
等 级:论坛游民
帖 子:64
专家分:58
注 册:2010-8-1
收藏
得分:0 
回复 2楼 安普留香
我郁闷了.....只注意到前面一个等号.....

当你小有成绩,打算沾沾自喜时。不知道有多少比你强的人正在埋头奋进!
2010-08-07 16:41
快速回复:出现error C2106: '=' : left operand must be l-value的原因
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019837 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved