c - 打印第二个字符串会导致第一个字符串在 C 中重复自身
问题描述
当我尝试使用大小b
为 5 的字符串执行此代码时,它会打印出来
芒果苹果
尽管没有打印字符串a
,但输出仍然是
芒果苹果
但是如果我将字符串的大小b
增加到 6,它只会打印
芒果
int i=0;
char a[5]="apple";
char b[5]="mango";
pf("\n%s",b);
解决方案
\0
如上面评论中提到的那样,为终止符增加一个数组,或者只打印必要的大小:
pf("\n%.*s", sizeof(b), b);
推荐阅读
- magento - 从自定义产品类型创建产品
- php - 在 PHP 中从 XLSM 编辑 Excel XML 工作表文件
- php - 如何在没有文件扩展名的情况下调用我的文件/函数名
- azure - Microsoft Data Factory Azure 中的 Web 活动 - 获取标头和传递参数(当前显示为空)
- ssl - 如何在使用 ISTIO 服务网格时为 ldap/opendj 配置 ssl
- tensorflow - 如何在 keras 中创建滑动二维自动编码器?
- r - For循环矢量化
- javascript - 如果对象已经处于状态,则不要添加新条目
- python - 用 Python 标记 ISCX 僵尸网络数据集 2014
- java - Java中的线程和对象