作者deepking (wnuiayldh)
看板C_and_CPP
标题[问题] C的getline用法?
时间Tue Jun 30 17:44:46 2009
$ 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
1F:推 zlw:cstdio跟cstring里没这函数,C++有cin.getline或std::getline 06/30 17:55
2F:推 zlw:另外,第一个参数你用的n是 char *不是char** 06/30 17:58
3F:推 Bencrie:传n进去会不会有问题啊... &n是唯读的说 06/30 17:59
4F:→ deepking:THX~~那这函式有什麽用途呢,以为跟c++的getline一样用法 06/30 18:08
5F:推 zlw:我的意思只是不是标准的函数而已。应该就是标准的gets()安全版 06/30 18:10
6F:→ zlw:char n[2][128]; 06/30 18:10
7F:→ zlw:试了也不行,大概要 char **n; n = new char*[2]; n[0]=new ch 06/30 18:12
8F:→ zlw:ar[128]; 06/30 18:12
9F:推 ledia:自己学着看看 man page 好吗? 06/30 18:48
10F:→ ledia:这是会帮你 alloc / realloc 的 getline 06/30 18:49
11F:→ ledia:当然最後还是要自己将之 free 掉 06/30 18:50
12F:→ ledia:一开始时可以传 NULL 或是先 malloc 某个大小都行 06/30 18:50