看板 C_and_CPP 關於我們 聯絡資訊
$ man getline ssize_t getline(char **lineptr, size_t *n, FILE *stream); char n[MAX]; int N=100; getline(&n, &N, stdin); printf("%c", n[0]); 為什麼這樣印出來都不是輸入的字元呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.122.36.221
zlw:cstdio跟cstring裡沒這函數,C++有cin.getline或std::getline 06/30 17:55
zlw:另外,第一個參數你用的n是 char *不是char** 06/30 17:58
Bencrie:傳n進去會不會有問題啊... &n是唯讀的說 06/30 17:59
deepking:THX~~那這函式有什麼用途呢,以為跟c++的getline一樣用法 06/30 18:08
zlw:我的意思只是不是標準的函數而已。應該就是標準的gets()安全版 06/30 18:10
zlw:char n[2][128]; 06/30 18:10
zlw:試了也不行,大概要 char **n; n = new char*[2]; n[0]=new ch 06/30 18:12
zlw:ar[128]; 06/30 18:12
ledia:自己學著看看 man page 好嗎? 06/30 18:48
ledia:這是會幫你 alloc / realloc 的 getline 06/30 18:49
ledia:當然最後還是要自己將之 free 掉 06/30 18:50
ledia:一開始時可以傳 NULL 或是先 malloc 某個大小都行 06/30 18:50