h-b-z-d-j-s-m 发表于 2022-10-3 18:19:45

库函数调用

若有语句:char s1[]="string",s2="",*s3,*s4="string2";
则对库函数strcpy的错误调用是()
A.strcpy(s1,"string2");
B.strcpy(s4,"string1");
C.strcpy(s3,"string1");
D.strcpy(s1,s2);
请问A为什么对的啊,string不是比string2小吗

jackz007 发表于 2022-10-3 18:33:25

本帖最后由 jackz007 于 2022-10-3 18:34 编辑

         A 只是会越界,程序还是能继续运行,而答案 C 的 strcpy(s3 , "string1")目的地址 s3 并没有指向任何有效的内存空间,执行此句程序会直接奔溃。

cjgank 发表于 2022-10-3 21:32:38

strcpy()字符串复制函数,要复制字符串首先你要给个指向某一块空间的地址,很明显*S3是一个不指向任何空间的野指针
页: [1]
查看完整版本: 库函数调用