【5】C#期末复习第5套-而数组作为函数参数实际上传递的是首地址,可以改变

时间:2024-12-20 20:10:41

3.比较字符串库函数strcmp

4.执行结果是x=3,y=3

int x=3,y;
int *px=&x;
y=*px++;

(优先级++高于*)

5.*p[5]没有实际意义,p[5]和*(p+5)才有

6.若有说明:int *p1,*p2,m=5,n;则正确的是(C)

         (B)p1=&m;p2=&n;*p1=*p2;

        (C)p1=&m,p1=p2;

7.找出不能正确赋值的程序语句(C)

        (A)  p1 = &ch; scanf("%c", p1); 
        (B)  p2 = (char *)malloc(1); scanf("%c", p2); 
        (C)  * p3 = getchar(); 
        (D)  p4 = &ch; *p4 = getchar(); 

malloc函数:

原型---extern void * malloc(unsigned int num_byte); 

作用---分配长度为num_byte字节的内存块;

8.

void fun(int a)
{a=456;}
main()
{
    int x=10;
    fun(x);
printf("%d",x);
}

这段代码的输出结果是  10 

fun  函数没有返回值,在函数内部对参数的修改不会影响到主函数中变量的值
最后, printf("%d,%d,%d\n", z, y, x);  输出的是  z ,  y , 和  x  的原始值,即  30,20,10