- 论坛徽章:
- 1
|
求助!编程时OPEN函数的问题!
- [mochou@WebAgent mochou]$ cat t1.c
- # include <stdio.h>;
- # include <string.h>;
- int main( void )
- {
- int fd;
- char filename[80];
- memset( filename, 0x00, sizeof(filename) );
- write(1,"filename:",9);
- read(0,filename,sizeof(filename));
- fprintf( stderr, "filename's len: [%d]\n", strlen(filename) );
- fprintf( stderr, "last char: [%d]\n", filename[strlen(filename)-1] );
- return 1;
- }
- [mochou@WebAgent mochou]$ cc -o t1 t1.c
- [mochou@WebAgent mochou]$ ./t1
- filename:abc
- filename's len: [4]
- last char: [10]
- [mochou@WebAgent mochou]$
复制代码
楼主你看看,我只输入了 abc 三个字母,但是 strlen 的结果是 4,
说明多了一个字符,
多出来的最后一个字符是 ASCII 码的 10,也就是换行符。
所以,我想应该是这个原因引起的。 |
|