Linux编程--fopen函数的用法?
请问各位高手:C编程中的fopen函数,原型是 fopen(const char *filename,const char mode),请问在使用这个函数时,要想从Linux终端输入文件名和mode,该如何处理?谢谢!!
书上解释filename时说,filename可以所文件名,也可以是包括文件路径的文件名,终端输入我用了gets函数,但是在执行到fopen函数时,出现段错误,我想实现的是,从终端输入文件名存储在str中,然后fopen(str,mode),请问我该如何操作呢?
mode其实是一个const char,所以需要一个char*来保存,filename也一样啊。
不过需要检查这两个输入string的合法性,不然会出错。
供参考:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(int argc, char *argv[])
{
char filename[20],mode[5];
FILE * fHandle = NULL;
memset(filename,'\0',20);
printf("input filename:");
scanf("%s",filename);
printf("\ninput mode string:");
while(1)
{
memset(mode,'\0',5);
scanf("%s",mode);
/*For example:only need "w" mode for fopen */
if(strcmp(mode,"w"))
{
printf("invalid mode,please input again:\n");
&nb
相关问答:
目标:当网络中有数据到达或者超时,程序进入下一次循环。
问题:select()函数不起作用,程序不会在select的地方阻塞一秒,并且当网络上有数据的时候,select的返回值仍然小于0
#include <s ......
熟悉Linux,C/C++,有一年的工作经验,请问在上海能拿多少?
我sz的
等sh的回答
关注
一年的工作经验的人,根据你的学校,和学历来看.
我一个实验室的学长,上海,做LINUX驱动开发,2年 6000/月,实到手56 ......
192.168.0.201是Linux
192.168.0.35是另外一台装有WEB的服务器,
我想访问192.168.0.201的时候
让他nat到192.168.0.35的80上。
以下是我设置的,但是不行。应该怎么设置呀?
root@ubuntu:/h ......
我没有安装操作系统的经验,即使是WINDOWS。现在想在LINUX操作系统大环境下学C语言,又要买本本,请问如果操作系统安装不当,会不会对电脑造成什么大的破坏?有没有必要先买一个二手电脑练一下LINUX的 ......
我现在用的是dpch 进行配置的
Perl code:
abc ~ # ifconfig
eth0 Link encap:Ethernet HWaddr 00:1e:ec:c1:94:75
inet addr:10.2.0.144 Bcast:10.2.1.255 Mask:255.255.254.0
......