小编mat*_*kas的帖子

是否需要施展无效?

我让编译器抱怨(警告)关于下面的内容.

我错过了什么吗?因为我认为这不需要演员

char* CurrentCh  = some ptr value;
int size;

size = func(&CurrentCh);
Run Code Online (Sandbox Code Playgroud)

用func这样定义

int func(void** ptr);
Run Code Online (Sandbox Code Playgroud)

编译器警告:

从不兼容的指针类型传递'func'的参数1

谢谢

c

4
推荐指数
1
解决办法
453
查看次数

If语句中的多指针测试

考虑指向结构的指针

struct a_struct  
{   
    int A; 
};  
Run Code Online (Sandbox Code Playgroud)

可以这样做:

struct a_struct *ptr;  

//...

if( ptr != NULL && ptr->A == 1)  
{  
    //work with ptr struct  
}     
Run Code Online (Sandbox Code Playgroud)

或者你应该在测试其字段之前测试指针是否有效.

if(ptr != NULL)
{
    if(ptr->A == 1)
    {
        //work with ptr struct
    }
}
Run Code Online (Sandbox Code Playgroud)

c testing null pointers

2
推荐指数
2
解决办法
236
查看次数

标签 统计

c ×2

null ×1

pointers ×1

testing ×1