c - 无法在C中打开二进制文件
问题描述
我有一个名为签名的二进制文件,我尝试根据用户输入在我的程序中打开它。我意识到当我输入确切的文件名时它实际上并没有打开,我不知道为什么。
这是我为测试此事而编写的代码:
char buffer[1024];
fgets(buffer, 1024, stdin);
FILE* file = fopen(buffer, "rb");
if(file){
printf("worked");
fclose(file);
}
当我输入“签名”时,文件仍然没有打开。但是,如果我执行以下操作:
FILE* file = fopen("signatures","rb");
它实际上确实打开了。可能是什么问题呢?
我在以 Windows 10 作为主机的 virtualbox 虚拟机上的 ubuntu 18.04 上运行它。
解决方案
推荐阅读
- oracle - 是否可以为现有域创建新的 RCU 模式?
- push-notification - 您能否在多个服务器(Dev、UAT、LIVE)上刷新 APNS 服务器令牌
- python - 使用richDEM计算数字高程模型中的坡度
- powershell - 将 csv 文件作为新工作表附加到现有的 excel
- java - 春季数据可分页,选择不同的一列
- flutter - 图像未显示在 vs 代码中的 flutter.dart 中
- java - 为什么 `Set.of()` 的实现方式与 `Collections.emptySet()` 不同?
- sql - 如何从日期中查找整个日期列的工作日
- javascript - 侧边栏面板 vscode 扩展
- spring-boot - 如何在 jpa 查询中按日期排序