2015-06-02 64 views
-7
int appendBuffer(buffer_t buffer, char c) 

這是我必須做的功能。 我想爲我的變量buffer添加一個char c,他是buffer_t類型的,buffer_t是指向buffer_s的指針,緩衝區是buffer_s如何添加一個字符到緩衝區?

+4

你嘗試過自己嗎?它是如何(或沒有)它的工作? 'buffer_t'的* actual *定義是什麼?結構是什麼樣的?請爲相關類型和結構的定義顯示實際的*代碼*。 –

+1

爲了清楚起見,爲'buffer_t','buffer_s'提供類型定義,並且如其他人所建議的那樣,顯示您嘗試的內容。 – ryyker

+0

顯示類型和結構聲明或關閉。 –

回答

0

如何:

typedef char* buffer_s; 
typedef buffer_s* buffer_t; 

int appendBuffer(buffer_t buffer, char c) 
{ 
    int size; 
    char *outbuf; 
    size = strlen(*buffer); 
    outbuf = malloc(size+2); 
    strcpy(outbuf,*buffer); 
    *(outbuf+size) = c; 
    *(outbuf+size+1) = 0; 
    free(*buffer); 
    *buffer = outbuf; 
    return (size+1); 
} 
相關問題