var welcomeTour = localStorage.getItem("welscreen");
if(welcomeTour === undefined || welcomeTour === null) {
localStorage.setItem("welscreen", "0");
welcomeTour = "0";
}
请看这个,当输入23个字符以内的一些字符时,没关系,输入超过23个字符时,如图像显示,我的结果显示乱码,为什么会这样? enter image description here
答案 0 :(得分:3)
当您对指针执行sizeof
时,您将获得指针的大小而不是指向它的内存。这通常是4或8,具体取决于您使用的是32位还是64位系统。
然后strlen
返回字符串的长度,而不是空终止符。
当strcpy
调用超出范围时,这两个大小都很小,可以用终结符保存完整的字符串,从而导致未定义的行为。