簡體   English   中英

比較 C 中的 char* 和 char[]

[英]Compare a char* with char[] in C

我正在嘗試比較 C 中的 char[100] (nodo->fname) 和 char* (name),並且在比較兩者時我在 strcmp function 中遇到分段錯誤:

struct mmap_info{
   char fname[100];
}

pos search_mmap(list *l, char *name){
    for(pos p = first(*l); !end(*l, p); p = next(*l, p)){
        struct mmap_info *nodo = get(*l, p);
        if(strcmp(nodo->fname, name) == 0){
            return p;
        }
    }
    return NULL;
}

(已經 malloc() nodo 在代碼的其他部分)

這是我應該比較它們的方式嗎? 如果不是我該怎么辦? 謝謝!

問題是我沒有檢查名稱是否可能是 NULL,謝謝大家!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM