首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    写一个宏定义,不用大于号小于号和if,判断正整数a,b大小

    今天分享一个有意思题目,考察了两个C语言容易被忽视知识点。 题目: 写一个宏定义,不用大于号>、小于号<和if,判断正整数a,b大小。...b:a 解答: 0x80000000 二进制是:1000 0000 0000 0000 0000 0000 0000 0000(第一位是符号位,所以此数是负数) 如果a-b是正数:根据二进制数表示..., 分为符号位跟数值位,0正1负,所以a-b最高位是0,那么与上1000 0000 0000 0000 0000 0000 0000 0000之后,三元运算符判断条件结果是0,输出a 如果a-b是负数...1000 0000 0000 0000 0000 0000 0000 0000之后,三元运算符判断条件结果是1,输出b 考察知识点: 1、与或非 2、三元运算符 拔高题(大厂笔试题): 写一个宏定义,不用大于号...,判断正整数a,b大小。 大家可以在评论区留下自己答案,最优秀答案有红包奖励。

    96220

    Js正则表达式

    JavaScript 中正则表达式(Regex)是用于在文本中匹配特定字符字符串模式。它们用于验证表单、解析字符串、替换文本等。...正则表达式在 JavaScript 中有许多用途:验证电子邮件:/^([a-z0-9_\.-]+)@([\da-z\.-]+)\....学习正则表达式先决条件是了解一种编程语言,比如 JavaScript。下面是有关在 JavaScript 中学习并轻松理解正则表达式文章。...* 匹配 0 或多个先前标记。+ 匹配 1 或多个先前标记。? 使前一个标记变成可选,匹配 0 或 1 次。...标志(flags)是修改正则表达式行为可选参数。常见标志有 g(全局匹配)和 i(大小写不敏感匹配)。希望这些翻译能够帮助您更好地理解 JavaScript 中正则表达式!

    15610

    jS正则和WEB框架Django入门

    JS正则 -test 判断字符串是否符合规定正则表达式 -exec 获取匹配数据 test例子: 从上述例子我们可以看出,如果rep.test匹配到了就返回true,否则返回false exec...例子 上述匹配结果是一个数组,但是不管匹配几次都只显示第一个 正则分组 全局匹配 没有分组情况下,会依次从第一个开始取,获取到最后一个如果再次获取,就会获得null,然后再冲第一个开始 如果这个时候采用分组效果如下...: 正则表达式 /…/ 用于定义正则表达式 /…/g 表示全局匹配 /…/i 表示不区分大小写 /...../m 表示多行匹配 这里多行匹配需要注意: 默认情况下js正则匹配就是多行匹配 通过下面例子理解加上m之后正则匹配 从例子可以看出只匹配到第一行内容,第二行并没有匹配,这里是因为整个text是一个字符串...: 0 !

    2.1K60

    js全局替换ip地址正则方法

    ​ 问题描述:最近有个需求使用是内外网,不同网段不能访问,系统中有些图片会挂掉,这里我们用nginx设置完代理后,剩下就是把需要ip全局替换一下解决方案:1、指定IP替换可以使用正则表达式和字符串...示例代码如下: var str = 'http://192.180.0.166:8080/abc/123';var replacedStr = str.replace(/http:\/\/192\.180\.0\....166:8080\//g, 'newurl/');console.log(replacedStr); // 输出:newurl/abc/123上面的代码中,正则表达式/http:\/\/192\.180...\.0\.166:8080\//g表示匹配字符串中http://192.180.0.166:8080/,其中\.表示匹配.字符,\/表示匹配/字符,g表示全局匹配。...2、不指定ip,任意ip地址替换方法 function replaceIP(data,fixedIP){ // 正则表达式匹配IP地址加端口格式 const regex

    13310

    简单探索 js 中 something >> 0 原理

    里面的实现是怎样,结果发现这么一行: // truncate if number or convert non-number to 0 target = target >> 0; 我倒不是对这个代码本身作用有什么疑问...,毕竟之前看过好多关于 js 技巧文章,其中都介绍过这种写法,并且自己也在实际工作中运用过多次。...0 console.log(target) // 0 根据 GetValue 逻辑可以发现,走到第二步就返回该值了,因为它是一个基础数据类型,所以 lval 值为 ‘a’。...之后带入之前右移操作规范 10 和 11 步就会得知,’a’ >> 0 等价于 +0 >> 0,最终结果是 +0。...但是当我们遇到一些自己不懂或者不熟悉东西时,一定要有意识去寻根问底,这样积少成多,精通 js 早晚会变成现实。

    1.1K30

    js正则表达式(1)

    函数调用,传参 * 2.js内置对象,切割:split(),切割完后得用一个变量给存储起来 * 3.for循环遍历,遍历查找 * 4.找到对应字符串,第0个转化为大写,转化为大写函数..._ return str.replace(re,function($0,$1){ // 第一个参数re表示正则,第二个回调函数,对该字符串处理方式,圆括号内形参数表示正则表达式子选项...两者对比: 相同点:都是为达到同一个目的,将一个字符串转换为驼峰命名 不同点:普通正常方法,得利用循环以及js中内置对象提供字符串(split,substring,join等)方法对所要操作字符串进行操作...,但凡用正则实现起来复杂程序,即普通面向过程方法逻辑要复杂得多,正则是为了解放它而生,进行搜素查找结合内置对象提供方法可以快速匹配,实现想要功能,然而它并不那么简单,往往是一些特殊符号组合令正则表达式难以阅读和理解...正则表达式:用来匹配和处理文本字符模式对象,在Ecmascript中RegExp类表示正则表达式,是正则表达式语言创建,是一种为解决以上等问题工具而造就一门规则,它有特殊语法和指令,String

    4.5K40

    2022-04-13:给你一个下标从 0 开始包含 n 个正整数数组 arr ,和一个正整数 k 。

    2022-04-13:给你一个下标从 0 开始包含 n 个正整数数组 arr ,和一个正整数 k 。...如果对于每个满足 k <= i <= n-1 下标 i ,都有 arri-k <= arri ,那么我们称 arr 是 K 递增 。...比方说,arr = 4, 1, 5, 2, 6, 2 对于 k = 2 是 K 递增,因为: arr0 <= arr2 arr1 <= arr3 arr2 <= arr4 arr3 <= arr5 但是...,相同数组 arr 对于 k = 1 不是 K 递增(因为 arr0 > arr1), 对于 k = 3 也不是 K 递增(因为 arr0 > arr3 )。...每一次 操作 中,你可以选择一个下标 i 并将 arri 改成任意 正整数。 请你返回对于给定 k ,使数组变成 K 递增 最少操作次数 。 力扣2111。

    37610

    js正则表达式(2)

    前言 紧接着上次js正则表达式(1),这一文搁在那很久了,本文为初学者学习笔记心得,适用我这种小白,并不是什么高大尚内容,您将在本文中看到,如何实现重复字符匹配,子表达式使用,嵌套以及replace..., +匹配一个或多个字符(也就是至少一个,不匹配零个字符(大于零)情况) 示例1: var str = "aaabbb"; var pattern = /a+/; console.log(pattern.test...,而[0-9+]则不是,其实后面一个也是一个正确正则表达式,只是含义不一样,它表示是一个由数字0到9和+构成字符集合,它只能匹配一个单个数字字符或者加号,而+号是一个元字符,如果需要匹配+本身,...,没有限制,但是要适可而止,多重嵌套子表达式可以构造出强大正则表达式,但是由于层层嵌套,会让正则表达式难以阅读和理解,但硬骨头始终是要啃,如果进行表达式拆分,每次只分析和理解一个子表达式,按照先内后外原则来进行拆分...,当然正则是非常强大,远不止这点皮毛,反正我个人觉得,还是挺复杂,往往通过正则写起来复杂,用面向过程写法,逻辑更为复杂,工具用好了,就是神器 以下是本篇提点概要 重复字符匹配( x+) *:匹配零个或多个字符

    2.8K30
    领券