在网上找到一篇展示计算机浮点数格式的文章,且有C代码如下:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <locale.h>
int main() {
float f;
double d;
char bs[];
char b[];
char s[];
unsigned char *p;
char e[];
char *t;
int ex; while () {
printf("Input a float point number:"); fflush(stdout);
rewind(stdin);
fgets(s, , stdin);
if ( == sscanf(s, "%f", &f) && == sscanf(s, "%lf", &d)) break;
}
printf("f=%g\n", f);
p = (unsigned char *)&f;
printf("hex=%02X %02X %02X %02X\n", p[], p[], p[], p[]);
ltoa(*(long *)&f, b, );
sprintf(bs, "%032s", b);
printf("bin=%s\n", bs);
printf("bin=%.1s %.8s %s\n", bs, bs + , bs + );
strncpy(e, bs + , ); e[] = ;
ex = strtol(e, &t, );
printf(" %c %-4d-127 1.%s\n", (bs[] == '') ? '+' : '-', ex, bs + );
ex -= ;
printf(" %c %-8d 1.%s\n", (bs[] == '') ? '+' : '-', ex, bs + ); printf("\nd=%lg\n", d);
p = (unsigned char *)&d;
printf("hex=%02X %02X %02X %02X %02X %02X %02X %02X\n", p[], p[], p[], p[], p[], p[], p[], p[]);
_i64toa(*(__int64 *)&d, b, );
sprintf(bs, "%064s", b);
printf("bin=%s\n", bs);
printf("bin=%.1s %.11s %s\n", bs, bs + , bs + );
strncpy(e, bs + , ); e[] = ;
ex = strtol(e, &t, );
printf(" %c %-6d-1023 1.%s\n", (bs[] == '') ? '+' : '-', ex, bs + );
ex -= ;
printf(" %c %-11d 1.%s\n", (bs[] == '') ? '+' : '-', ex, bs + ); return ;
}

遂在自己的64位Windows系统电脑上建立VS工程,粘贴上述代码。编译,出现两个错误。

第一个错误,提示各种函数不安全,要求替换。在网上找到解决方案,并采用更改预处理定义的方法解决了问题,也即:项目->属性->配置属性->C/C++ -> 预处理器 -> 预处理器定义,增加:_CRT_SECURE_NO_DEPRECATE

第二个错误,提示如下:

warning C4996: 'itoa': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _itoa. See online help for details

在网上找到解决方案,首先采用 PROJECT PROPERTIES->LINKER->GENERAL->ENABLE INCREMENTAL LINKKING and set it to NO 的办法,没有解决了问题。然后,接受编译器的提示和建议,用_itoa函数,编译通过。

2017年4月13日用VS写C程序遇到的一些问题的更多相关文章

  1. [转载]Ubuntu17.04(Zesty Zapus)路线图发布:2017年4月13日发布

    Canonical今天公布了Ubuntu 17.04(Zesty Zapus)操作系统的发布路线图,该版本于今年10月24日上线启动,toolchain已经上传且首个daily ISO镜像已经生成.面 ...

  2. GridView有用的小方法--2017年2月13日[转]

    快速预览: GridView无代码分页排序GridView选中,编辑,取消,删除GridView正反双向排序GridView和下拉菜单DropDownList结合GridView和CheckBox结合 ...

  3. GridView有用的小方法--2017年2月13日

    原文:http://blog.csdn.net/21aspnet/article/category/285354更多:http://blog.csdn.net/21aspnet/article/cat ...

  4. 【MySQL学习杂记】 2017年7月13日

    1. 关于分组 当select使用groupby语法时,select返回字段集合里面除去 <使用了聚合函数的字段>.<不包含在 group by 子句的字段> 的其他字段,这些 ...

  5. 2017年12月13日 LinQ用法基本的增删改查

    LinQ是什么? LinQ是语言集成的查询,是用于C#跟Vb的扩展语言 LinQ的用法 新建一个App_Code文件夹,在文件夹下添加一个数据LinQ to SQL类,可以直接直接点击服务器管理器然后 ...

  6. 【2017年9月10日更新】ABP配套代码生成器(ABP Code Generator)帮助文档,实现快速开发

    ABP代码生成器介绍 ABP Code Generator 针对abp这个框架做了一个代码生成器,功能强大.分为两大功能点,一个是数据层,一个是视图层. 数据服务层:通过它,可以实现表设计.领域层初始 ...

  7. 免费公共DNS服务器IP地址大全(2017年6月24日)

    收集全球各个常用公共DNS服务器 IP地址,欢迎各位朋友评论补充! 国内常用公共DNS 114 DNS: (114.114.114.114:    114.114.115.115) 114DNS安全版 ...

  8. Java 9 ← 2017,2019 → Java 13,来看看Java两年来的变化

    距离 2019 年结束,只剩下 33 天了.你做好准备迎接 2020 年了吗? 一到年底,人就特别容易陷入回忆和比较之中,比如说这几天的对比挑战就火了! 这个话题登上了微博的热搜榜,也刷爆了朋友圈, ...

  9. 猖獗的假新闻:2017年1月1日起iOS的APP必须使用HTTPS

    一.假新闻如此猖獗 刚才一位老同事 打电话问:我们公司还是用的HTTP,马上就到2017年了,提交AppStore会被拒绝,怎么办? 公司里已经有很多人问过这个问题,回答一下: HTTP还是可以正常提 ...

随机推荐

  1. Javascript 中的数据类型判断

    (迁移自旧博客2017 09 25) typeof 我们常使用typeof来判断数据类型,在常规场景中足以应付数据类型判断的需要: var obj = { name: 'zhangxiang' }; ...

  2. STM32的PA15、PB3、 PB4管脚作普通管脚的解决办法

      最近做了一个板子,使用的是SWD方式进行下载程序,仅仅使用到SWDIO(PA13) 和SWCLK(PA14)两个管脚.我将PA15(JTDI)和PB3(JTDO)管脚用于他用(用于点LED使用), ...

  3. (js) 字符串和数组的常用方法

    JS中字符串和数组的常用方法 JS中字符串和数组的常用方法 js中字符串常用方法 查找字符串 根据索引值查找字符串的值 根据字符值查找索引值 截取字符串的方法 字符串替换 字符串的遍历查找 字符串转化 ...

  4. Vue-admin工作整理(二):项目结构个人配置

    通过上一篇文章(Vue-admin工作整理(一):项目搭建)操作完毕后,基础项目已经搭建,下面就要对项目本身进行一下项目结构调整来符合自己的项目要求 1.首先要对package.json文件进行调整, ...

  5. C#操作Control异步工具类

    /// <summary> /// 异步工具类 /// </summary> public class TaskTools { /// <summary> /// ...

  6. eclipse配置运行时变量

    说明:我这里是在执行测试方法是配置的环境变量 步骤: 选中测试方法 -> 右键 -> run as -> run configurations ->

  7. box-sizing的用法(笔记)

    关于盒子布局的box-sizing的使用 border-box width 和 height 属性包括内容,内边距和边框,但不包括外边距.这是当文档处于 Quirks模式 时Internet Expl ...

  8. LeetCode--029--两数相除(java)

    给定两个整数,被除数 dividend 和除数 divisor.将两数相除,要求不使用乘法.除法和 mod 运算符. 返回被除数 dividend 除以除数 divisor 得到的商. 示例 1: 输 ...

  9. vue中data中引用本地图片报错404

    首先说明vue-cli中assets和static两个文件的区别 1.assets在项目编译的过程中会被webpack处理理解为模块依赖,如果执行npm run dev或npm run build命令 ...

  10. WEB UI 上传URL附件(使用方法备份)

    FUNCTION zcrm_update_atta. *"------------------------------------------------------------------ ...