簡體   English   中英

無法在C中將字符串添加到LinkedList

[英]Trouble adding string to LinkedList in C

我想在C中的鏈表中添加一個字符串。我能夠弄清楚如何添加一個整數,所以我認為添加一個字符串不會有太大的不同。 所以我嘗試了以下方法:

struct node{
   char val;
   struct node * next;
};

typedef struct node item;

void linked_list(char letter[]) {
    item * curr, * head;
    int i;

    head = NULL;

    curr = (item *)malloc(sizeof(item));
    curr->val = letter;
    curr->next  = head;
    head = curr;     

    curr = head;

    while(curr) {
        printf("%s\n", curr->val);
        curr = curr->next ;
    }
}

但是,我不斷得到一個

賦值從指針生成整數而沒有強制轉換

警告和

格式'%s'需要類型'char *',但參數2有'int'

如果在結構中,val是一個字符,為什么我會收到此錯誤?

附注: char letter[]從單獨的main方法傳入字母/字符。

我正在學習本教程中的C和鏈接列表: http//www.learn-c.org/en/Linked_lists

val是一個char ,實際上是0到255之間的數字。

你想要的是一個char * ,它是一個字符串。

暫無
暫無

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

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