if是什么c语言,这个C语言是什么(if(1))?
我在openssl源代码中注意到一个奇怪的成语,
here并重复如下:
if ((in == NULL) && (passwds == NULL)) {
if (1) { (*
#ifndef OPENSSL_NO_UI
/* build a null-terminated list */
static char *passwds_static[2] = { NULL, NULL };
passwds = passwds_static;
if (in == NULL)
if (EVP_read_pw_string
(passwd_malloc, passwd_malloc_size, "Password: ",
!(passed_salt || in_noverify)) != 0)
goto end;
passwds[0] = passwd_malloc;
} else {
#endif
BIO_printf(bio_err, "password required\n");
goto end;
}
}
看来这段代码相当于:
if ((in == NULL) && (passwds == NULL)) {
#ifndef OPENSSL_NO_UI
/* build a null-terminated list */
static char *passwds_static[2] = { NULL, NULL };
passwds = passwds_static;
if (in == NULL)
if (EVP_read_pw_string
(passwd_malloc, passwd_malloc_size, "Password: ",
!(passed_salt || in_noverify)) != 0)
goto end;
passwds[0] = passwd_malloc;
#else
BIO_printf(bio_err, "password required\n");
goto end;
#endif
}
我排除了一些解释:
>它可能是为passwds_static引入块范围,但是如果将为类似的目的提供封闭的范围
>它可能是一个通过几个有意义的变换变得没有意义的结构,但那个结构就是since the introduction of OPENSSL_NO_UI.
我在这里遗漏了什么吗? (1)有什么好处?这是否用于其他代码库?
谢谢!
if是什么c语言,这个C语言是什么(if(1))?相关推荐
- c语言表达式3178的值为,【C语言】C语言运算符
c语言 &取地址运算符的理解 对于c语言中的&运算符,百度百科是这样定义的:(&p)则是这样一种运算,返回当时声明p 时开辟的地址:但是根据我对代码的观察,我觉得&am ...
- 多语言php,多语言 · ThinkPHP5.0完全开发手册 · 看云
ThinkPHP内置通过`\think\Lang`类提供多语言支持,如果你的应用涉及到国际化的支持,那么可以定义相关的语言包文件.任何字符串形式的输出,都可以定义语言常量. ## 开启和加载语言包 默 ...
- 为什么要使用Go语言?Go语言的优势在哪里?
链客,专为开发者而生,有问必答! 此文章来自区块链技术社区,未经允许拒绝转载. Go语言之所有越来越受到开发者的欢迎,我认为与其超高的实用价值密不可分.要知道Go语言是为了解决现实问题而设计的,而不是 ...
- java 全局变量_Java语言与C语言、C++语言有何差异以及优劣势
差异 熟悉C语言和C++语言的读者一定想搞清楚这个问题,实际上,Java确实是从C语言和C++语言继承了许多成分,甚至可以将Java看成是类C语言发展和衍生的产物.比如Java语言的变量声明.操作符的 ...
- python是高级动态语言_Python动态语言之魅力揭秘
之前的文章跟大家讲解了鸭子类型,其实鸭子类型是编程语言中动态类型语言中的一种设计风格.今天跟大家一起谈谈动态语言的魅力. 根据维基百科,动态编程语言是这样子定义的:动态编程语言是高级编程语言的一个类别 ...
- 自学编程是从python语言还是c语言开始-非计算机专业大学生想自学编程应该学C语言还是学Python?...
之前总结的文章,分享过来,希望对你有帮助.windliang:到底学哪一门编程语言zhuanlan.zhihu.com 发展进程 学哪一门编程语言,我们不妨先梳理一下语言的发展过程. 机器语言 计算 ...
- 脚本编程语言python语言-python语言是脚本语言吗
Python是一种编程语言还是脚本语言? Python是GuidoVanRossum开发的最著名的编程语言之一.Python在开发人员中很受欢迎,因为它具有清晰的语法和简单的代码,甚至对于初学者来说也 ...
- 【Groovy】Groovy 动态语言特性 ( Groovy 语言与 Java 语言执行效率对比 | 以动态特性编译的 Groovy 类 | 以静态特性编译的 Groovy 类 )
文章目录 一.以动态特性编译的 Groovy 类 二.Groovy 语言与 Java 语言执行效率对比 三.以静态特性编译的 Groovy 类 一.以动态特性编译的 Groovy 类 Groovy 类 ...
- 【Groovy】Groovy 语言特点简介 ( 支持 Java 语法 | 支持 Java 虚拟机 | Groovy 语言是动态语言 | Groovy 扩展 JDK | 编译时元编程 )
文章目录 一.Groovy 支持 Java 语法 二.Groovy 支持 Java 虚拟机 三.Groovy 语言是 动态语言 四.Groovy 扩展 JDK 五.Groovy 编译时元编程 一.Gr ...
- 【C 语言】C 语言 函数 详解 ( 函数本质 | 顺序点 | 可变参数 | 函数调用 | 函数活动记录 | 函数设计 ) [ C语言核心概念 ]
相关文章链接 : 1.[嵌入式开发]C语言 指针数组 多维数组 2.[嵌入式开发]C语言 命令行参数 函数指针 gdb调试 3.[嵌入式开发]C语言 结构体相关 的 函数 指针 数组 4.[嵌入式开发 ...
最新文章
- 多年后的同学聚会,程序员混得最差?
- 谷歌为何能持续创新?工程经理亲自揭秘“工程师文化”
- vue前端上传文件夹的插件_基于vue-simple-uploader封装文件分片上传、秒传及断点续传的全局上传插件...
- 微信客户端<->腾讯微信服务器<->开发者服务器
- (tmp 8) 0xff;
- atheros有线网卡LINUX驱动,请问有知道atheros无线网卡Linux驱动官方下载地址是什么吗?...
- mysql 查询语句属性值_MySQL学习——SQL查询语句(一)
- 搜索引擎的那些事(web遍历)
- vs2017配置pthread.h的方法
- 纪念 C语言之父 丹尼斯·里奇 逝世11周年:他发明了计算机世界的钢筋水泥!...
- 会考计算机考试模拟软件,计算机会考考试模拟(范文).doc
- 尤雨溪: 2022 Web 前端生态趋势
- LINUX 下播放 DVD 全攻略 (关键字 DVD-ROM LiViD fifo OMS)
- 干货分享:微信好友删除了怎么找回?领取超好用的恢复方法
- html文件导入到u盘中,技术分享 - 编程实现U盘插入自动复制U盘内容到本地
- [高数][高昆轮][高等数学上][第一章-函数与极限]06.极限存在法则 两个重要极限...
- 征服英语的33条军规
- 15分钟读懂进程线程、同步异步、阻塞非阻塞、并发并行
- nginx-rtmp-hls 模块---大疆mavic推流hlx无法播放问题
- 信息学奥赛一本通 题解目录
热门文章
- android开发屏幕横放,android-即使从横向旋转到垂直,细节片段也会...
- 腾讯财报中“最大秘密”:2018云收入91亿元,交首份TO B答卷
- 左偏树 P3377【模板】左偏树(可并堆)
- vscode Go 1.11.4 编译错误 need Delve built by Go 1.11 or later
- MSSQL-最佳实践-如何监控备份还原进度
- Gson的使用,对于不需要html escape的情况的处理
- 原创 通过PEB获得进程路径 (附完整工程)
- android开发,设置listview的高度无效
- php __FILE__和$_SERVER['SCRIPT_FILENAME']区别
- DevExpress之TreeList节点绑定图片