首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >为什么if语句不起作用

为什么if语句不起作用
EN

Stack Overflow用户
提问于 2016-07-24 17:13:29
回答 2查看 1.1K关注 0票数 0

我是编程新手,不能解决这个问题,我已经找遍了所有我能想到的答案。当cin >> 1function2传递时,function1 if (m != 0 || 1)中的if语句似乎未被读取。这是我的代码,任何帮助都将不胜感激。

代码语言:javascript
运行
AI代码解释
复制
#include <iostream>

void function1(int i);

int main() {
    using namespace std;

    int i;

    function1(i);

return 0;
}
----------------------------------------------------------------------------
#include <iostream>

void function2();

void function1(int i) {
    using namespace std;
    if (i != 0 || 1 ) /* not working when the variable 'i' is passed from function2 */ {     
    cout << endl << "i != 0 || 1" << endl;
    function2();
    }
    else if (i == 0 || 1) {
        if (i == 0) {
            cout << endl << "m == 0" << endl;
        }
        else if (i == 1) {
            cout << endl << "m == 1" << endl;
        }
    }
}
----------------------------------------------------------------------------
#include <iostream>

void function1(int i);

void function2() {
    using namespace std;

    int i;

    cout << endl << "type 0 or 1" << endl;
    cin >> i;    /* type 1 or 0 in here */
    function1(i);
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-07-24 17:30:44

尽管user154248的答案是正确的(至少部分正确),但您可能会对原因感兴趣……

原因是operator!=具有更高的优先级(即在operator||之前评估)。所以if子句等同于if((i != 0) || 1)

此外,如果在需要布尔参数的表达式中使用,则任何不等于0(null/零)的值都将被计算为true,因此您将获得if((i != 0) || true)。现在,无论i != 0的计算结果是什么,整个表达式x || true都将得到true

最后-我们回到用户154248的答案...

但是,还有一个问题:i != 0 || i != 1也将始终计算为true:如果i等于0,i != 1将计算为true,如果I等于1,则i != 0将计算为true...

您真正需要的是i != 0 && i != 1

票数 3
EN

Stack Overflow用户

发布于 2016-07-24 17:15:52

尝试更改此设置:

代码语言:javascript
运行
AI代码解释
复制
if (i != 0 || 1 )

要这样做:

代码语言:javascript
运行
AI代码解释
复制
if (i != 0 || i != 1 )  
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38554633

复制
相关文章
react native使用WebView加载本地html部署方案
前言 最近自己编写的react native安卓程序准备部署一下,发现调用的webview是本地的html文件,即url的格式是: http://localhost:8081/..这样的, 所以打包之
十里桃花舞丶
2018/05/17
2.9K0
爬虫利器:jsDOM
需求:之前使用node做爬虫的时候,使用puppeteer来模拟浏览器 然后抓取信息 但是这样的效率和消耗太大了, 所以需要一种更为效率的方法:直接使用axios来请求对应的url 然后通过jsDom,渲染成一个虚拟的html然后进行取值 废话不多说直接上代码: 先安装jsdom npm i jsdom 然后写下面实例化 const jsdom = require("jsdom"); const { JSDOM } = jsdom; const dom = new JSDOM(`<!DOCTYPE html
biaoblog.cn 个人博客
2022/08/11
3130
Javascript文件加载:LABjs和RequireJS
传统上,加载Javascript文件都是使用<script>标签。 就像下面这样:   <script type="text/javascript" src="example.js"></scrip
ruanyf
2018/04/12
1.4K0
Javascript文件加载:LABjs和RequireJS
JavaScript 动态加载脚本和样式
3大点: 1.元素位置 2.动态脚本 3.动态样式 一.元素位置 getBoundingClientRect()。这个方法返回一个矩形对象,包含四个属性:left、top、right和bottom。分别表示元素各边与页面上边和左边的距离。 var box = document.getElementById('box');//获取元素 alert(box.getBoundingClientRect().top);//元素上边距离页面上边的距离 alert(box.getBoundingClientRect()
汤高
2018/01/11
1.4K0
Javascript文件加载 ——LABjs和RequireJS
<script>标签很方便,只要加入网页,浏览器就会读取并运行。但是,它存在一些严重的缺陷。
javascript.shop
2019/09/04
1K0
Javascript文件加载 ——LABjs和RequireJS
iOS加载本地HTML、pdf、doc、excel文件 & HTML字符串与富文本互转
如果你有需求在手机端打开本地html的需求,又觉得使用其他方法麻烦或者不管用的时候,推荐你可以自己写个简单的app进行打开。
公众号iOS逆向
2021/07/05
2K0
HTML加载顺序
完成了若干个基于WEB的项目, 也了解了从前端的js,css,html到后端python/php等, 二者如何交互, 最终浏览器如何执行, 这些在心里也已经很明确了. 不过一个问题一直萦绕在心中,那就是:
用户7657330
2020/08/14
1.9K0
WebGL加载本地模型
大部分的webgl框架,比如threejs和babylon等,都可以加载obj和gltf模型。 我们的引擎,基于three封装,同样有加载模型的loader,因此加载obj和gltf模型也是很简单就可以实现的。
用户3158888
2022/05/11
1.9K0
WebGL加载本地模型
【JS 逆向百例】网洛者反爬练习平台第六题:JS 加密,环境模拟检测
本文章中所有内容仅供学习交流,抓包内容、敏感网址、数据接口均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关,若有侵权,请联系我立即删除!
K哥爬虫
2021/12/28
8030
【JS 逆向百例】网洛者反爬练习平台第六题:JS 加密,环境模拟检测
javascript本地分页
注意:本地分页适用于数据量小的地方,如果数据量大,不建议使用本地分页 var iTable = document.getElementById("iTable"); var rows = iTable.rows.length; var pageSize = 3;//每页显示条数 var pageNum = 0;//总页数 var current = 1; if(rows/pageSize > parseInt(rows/pageSize)){ pageNum = parseInt(rows/pa
Petrochor
2022/06/07
3400
HTML中传递和引用JavaScript变量
http://ivantian2008.blog.51cto.com/622133/1127456
明哥的运维笔记
2019/01/30
5.6K0
WebView浏览本地html
index.html放在Assets文件夹下,供WebChromeClient调用
提莫队长
2019/02/21
1.4K0
Gravatar 头像无法加载
由于众所周知的原因,头像服务器多数都无法正常访问,不管是http还是https。为了解决头像问题有两个办法:
obaby
2023/02/22
1.6K0
JavaScript HTML DOM - 改变 HTML
今天的日期是: Mon Jul 19 2021 15:52:44 GMT+0800 (中国标准时间)
陈不成i
2021/07/20
4.3K0
Html5 学习系列(六)Html5本地存储和本地数据库
本文介绍了如何使用HTML5中的WebSQL API来实现客户端数据库的访问,并通过一个具体的应用场景示例展示了如何使用该API来实现客户端的数据库操作。同时,本文还介绍了WebSQL API的常见用法以及其相关的兼容性情况。
老马
2018/01/05
2.4K0
Html5 学习系列(六)Html5本地存储和本地数据库
JavaScript加载速度
解决JS加载速度慢的问题 传统形式加载js文件 <script type="text/javascript" src="js调用地址"></script> 高速加载js文件 <script type="text/javascript"> /* 请不要删除这段代码,因为这段代码起到了加速JS加载作用 */ document.write("<scr"+"ipt src=\"你的js调用地址"></sc"+"ript>"); </script>
闲花手札
2021/08/24
7420
go : gin 加载html
本文介绍使用 LoadHTMLGlob() or LoadHTMLFiles() 加载html资源
IT工作者
2022/07/25
1.5K0
利用特殊协议加载本地文件, 绕过 HTML5 沙箱, 打开弹窗诸事
原文链接:https://www.brokenbrowser.com/abusing-of-protocols/ 原作者:Manuel Caballero 译:Holic (知道创宇404安全实验室) 在 10 月 25 日,研究员 @MSEdgeDev twitter 了一个链接,成功引起了我的注意,因为我点击那个链接的时候(在 Chrome 上),Windows 应用商店会自动打开。这对你来说也许不足为奇,但它足以让我感到惊讶。 在我印象中,Chrome 有这样一个健康的习惯,在打开外部程序之前询问用户
Seebug漏洞平台
2018/03/30
2.5K0
UILabel加载html文本
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010105969/article/details/53163142
用户1451823
2018/09/13
3K0
点击加载更多

相似问题

如何用JSDOM加载本地JavaScript文件?

20

NPM和jsdom错误加载

13

无法加载脚本HTML和javascript

26

使用jsdom和nodeJS加载nodeJS

11

无法将本地jquery.js加载到node.js (NPM jsdom)

15
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文