visualstudio2017 community版本,有点失去信心了,同样两行代码,外观看不出任何区别,但是一个报错
不多废话,先上代码
注意查看函数fputs_FILE,该函数的两行代码fopen_s是同样的,但事实上:
第一条fopen_s执行起来会报错,但是第二条就不会!!!
/*
练习:获取用户键盘输入,写入文件中
*/
#include"head.h" int fgets_stdin(char *buf,int a) {
fgets(buf, a, stdin);
return EXIT_SUCCESS;
} int fputs_FILE(char *buf) {
FILE *fp;
fopen_s(&fp, "C:/Users/a/source/repos/ConsoleApplication7/fgets_stdin_fputs_FILE.txt","w+" );
//fopen_s(&fp, "C:/Users/a/source/repos/ConsoleApplication7/fgets_stdin_fputs_FILE.txt","w+" );
if (fp==NULL) {
perror("fopen_s");
return -1;
} fputs(buf, fp);
fclose(fp);
return EXIT_SUCCESS;
} int main() {
char buf[10] = { 0 };
fgets_stdin(buf,sizeof(buf) );
//printf("%s \n", buf);
fputs_FILE(buf); system("Pause");
return EXIT_SUCCESS;
}
第一行的fopen_s :fopen_s(&fp, "C:/Users/a/source/repos/ConsoleApplication7/fgets_stdin_fputs_FILE.txt","w+" );

最终每行开始排查,发现在第一行的参数二的位置”“内部有一个东西,类似于字符,可以让光标多移动一次,但是却并没有显示,即使复制粘贴到notepad++上也看不到该字符(该字符不同于回车或者换行)。
把该字符删除即可成功运行。
总结:
这就很懵,同样的代码竟然有了不同的结果,就好比在学习一个灯泡在多大的电压可以点亮时,突然发现,在220V下面点亮了,但是偶尔几次不亮,这就很违背物理常识了。
想起了一个问题:无神论造神(无神论创造物理定律等)。
visualstudio2017 community版本,有点失去信心了,同样两行代码,外观看不出任何区别,但是一个报错的更多相关文章
- vue-cli 3.x版本执行vue ui命令后提示Error: Cannot find module ‘core-js/modules/es7.object.entries’报错的解决方法
我的方法是:npm install --save core-js(全局安装竟然不行,必须局部) vue-cli新版提供了界面化项目管理的功能,简直一万个赞! 在安装 vue-cli 3.x 版本后, ...
- 【干货】YUM安装PHP 7版本后,增加phalcon框架的报错解决
目录 1.yum安装php 7.x版本,此处部署7.3版本 2.安装phalcon框架 2.1.PHP版本依赖关系 2.2.编译phalcon扩展模块 2.3.增加扩展文件 3.部署phalcon遇到 ...
- Laravel:php artisan key:generate三种报错解决方案,修改默认PHP版本(宝塔面板)
为了兼容N多个网站,服务器上有3个PHP版本5.3/5.6/7.2.宝塔默认为5.3,但是laravel5.7并不支持,所以在创建线上 .env 环境配置文件,初始化应用配置时候报错了. cp .en ...
- Windows 7上执行Cake 报错原因是Powershell 版本问题
在Windows 7 SP1 电脑上执行Cake的的例子 http://cakebuild.net/docs/tutorials/getting-started ,运行./Build.ps1 报下面的 ...
- 升级xcode8之后出现报错提示,提示swift版本问题
最近Xcode升级了,出现了各种蛋疼的错误提示,今天遇到个导入框架出现了提示Swift版本的问题,具体如下: "Use Legacy Swift Language Version" ...
- mac版本navicat连接oracle报错ORA-21561
最近电脑更换成mac,很多软件都和win不一样了,正在慢慢适应,连接oracle原来用的客户端是pl/sql develop,蛋疼的是没有了mac版本, 用了navicat,具体设置如下 1.新建连接 ...
- PL-SQL(免安装版本)报错ORA-12154
今天在帮同事安装PL/SQL时,在登陆的时候出现上述错误,从网上找了好多解决方法,但都没有解决问题.对于免安装版本的PL/SQL在登陆是应该先配置好路径:bin\instantclient_11_ ...
- IE对象最后一个属性后不要加逗号,否则在IE7及以下版本中会报错
某函数返回一个对象,如果在最后一个属性后加逗号,IE7及以下版本中会报错 正确代码: return{ top:rect.top-top, bottom:rect.bottom-top, left:re ...
- NAnt0.92版本首次在windows 8.1的机子上运行报错的问题解决
在官网上下载的0.92版本,各方面都配置好之后,用命令行运行,却提示报错,如下: 具体的错误提示文字是这样的: 获取ConfigurationFileLocation异常. System.Securi ...
- FineUI中Newtonsoft.Json版本报错解决办法
1.清空bin下的Newtonsoft.Json.dll 2.使用Nuget安装最新版本的Newtonsoft.Json.dll,安装脚本为 Install-Package Newtonsoft.Js ...
随机推荐
- API接口笔记
1.基类 定义返回信息 protected $user; //用户表 protected $token; //用户token protected $isSuccess = FALSE; //状态是 ...
- Bootstrap中的dropdown、下拉选择框、dropdown-toggle
注意:如果您想要单独引用该插件的功能,那么您需要引用 dropdown.js.可以引用 bootstrap.js 或压缩版的 bootstrap.min.js. <!DOCTYPE html&g ...
- Springboot+vue 实现汽车租赁系统(毕业设计二)(前后端项目分离)
文章目录 1.系统功能列表 2.管理员端界面 2.1 商家登录界面 2.2 用户信息管理界面 2.3 汽车管理界面 2.4 订单界面 2.5 汽车图形报表 2.6 优惠券新增界面 3.普通用户界面 3 ...
- 齐博x1页面报数据表错误如何修复
如果服务器突然重启,很容易导致数据表损坏,那是因为有用户正在读取数据表,但服务器突然中断服务,就会报下类下面的错误. 大家凡是看到类似下面的错误,包含关键字 Table *** is marked a ...
- 你真的会使用Typora吗?
你真的会使用Typora吗? 标题 一级标题:# 空格+内容 二级标题:## 空格+内容 字体 加粗:内容两边各加两个*号 你真美! 斜体:内容两边各加一个*号 你真帅! 删除线:两边各加两个~号(波 ...
- python批量加密文件
1.文件名的加密与解密 #coding:utf-8 from docx import Document import os,sys from docx.oxml.ns import qn def fi ...
- 2.Python封装练习及私有属性
面向对象三大特性 封装:根据职责将属性和方法封装到一个抽象的类中 继承:实现代码的重用,相同代码不需要重复的编写 1.单继承 2.多继承 多态:不同的对象调用相同的方法,产生不同的执行结果,增加代码的 ...
- $_SERVER['HTTP_USER_AGENT']:在PHP中HTTP_USER_AGENT是用来获取用户的相关信息的,包括用户使用的浏览器,操作系统等信息
在PHP中HTTP_USER_AGENT是用来获取用户的相关信息的,包括用户使用的浏览器,操作系统等信息. 我机器:操作系统:WIN7旗舰版 64操作系统 以下为各个浏览器下$_SERVER['HTT ...
- mitmproxy抓包工具
中文官网 https://ptorch.com/docs/10/mitmproxy-concepts-options mitmproxy抓包工具 1. mitmproxy 介绍与安装 需要安装pyth ...
- centos使用lftp备份文件
一直以来项目的文件没有备份,最近需要增加备份,本来以为备份是IT的工作,结果IT说工作忙,拖了半个月给分配完ftp服务器后说不给备份,需要我们开发自己备份...我特么*** 对于ftp备份,咱是没有经 ...