php里有c语言的'\0'吗 php一般怎么存储字符串
答案:2 悬赏:40 手机版
解决时间 2021-01-27 23:38
- 提问者网友:骑士
- 2021-01-27 07:56
php里有c语言的'\0'吗 php一般怎么存储字符串
最佳答案
- 五星知识达人网友:第幾種人
- 2021-01-27 08:45
$mixValue = "helloworld";
$arr = array();
//
$arr[0] = $mixValue;
//
array_push($arr,$mixValue);
var_dump($arr);
$arr = array();
//
$arr[0] = $mixValue;
//
array_push($arr,$mixValue);
var_dump($arr);
全部回答
- 1楼网友:空山清雨
- 2021-01-27 09:59
你可知道char b[][100]={0};这是什么意思吗?当你不指定第二维的长度,初始化时又没明确指出其长度,那么编译器就会把上式变为:char b[1][100]={0};结果你只开辟了1组100个char的数组,你还以为能有10组,当然错误啦。如果明确包含10个字符串,请明确指定:char b[10][100]={0};
你这个弹错,意思就是你开辟的内存空间不够,导致strcpy函数运行时缓冲区溢出,这使得程序跳转到一个非法的区域,这个区域被操作系统标记为保护,于是触发“cpu常规保护异常”。
以下仅作谈资,骗分数用的^ ^。
我印象中,如果是“cpu常规保护异常”,可能意味着你这跳转到的地方是操作系统内核区。当cpu以用户权限等级(最低权限等级,你这个main函数执行时,printf函数执行前或执行后是就是这种状态)尝试跳转到/访问需要cpu最高特权等级的区域就会触发这类错误。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯