汤梦飞123 2021-06-07 17:59 采纳率: 0%
浏览 125

sscanf 导致栈溢出的问题

#include <stdio.h>

void test()
{	
	
	unsigned short buf[6] = {0};
	
	for(int i=0;i <6;i++)
		printf("before sscanf buf[%d] = %d\n", i, buf[i]);

	sscanf("2021-06-07 17:55:05", "%d-%d-%d %d:%d:%d", &buf[0], &buf[1],&buf[2], &buf[3], &buf[4], &buf[5]);

	for(int i=0 ;i<6; i++)
		printf("after sscanf buf[%d] = %d\n", i, buf[i]);
}

int main()
{
	test();
   	return 0;
}

运行结果

root@ubuntu:~/Desktop/test# ./testCode 
before sscanf buf[0] = 0
before sscanf buf[1] = 0
before sscanf buf[2] = 0
before sscanf buf[3] = 0
before sscanf buf[4] = 0
before sscanf buf[5] = 0
after sscanf buf[0] = 2021
after sscanf buf[1] = 6
after sscanf buf[2] = 7
after sscanf buf[3] = 17
after sscanf buf[4] = 55
after sscanf buf[5] = 5
*** stack smashing detected ***: terminated
已放弃 (核心已转储)

请问为什么会导致栈溢出呢?

  • 写回答

5条回答 默认 最新

  • CSDN专家-Time 2021-06-07 18:03
    关注

    用 scanf_s

    评论

报告相同问题?

悬赏问题

  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?