質問編集履歴

1

ソースコード掲示

2015/06/14 03:21

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -41,3 +41,83 @@
41
41
  私のやりかたでおかしな点があればご指摘頂けると嬉しいです。
42
42
 
43
43
  乱文失礼致しました。
44
+
45
+
46
+
47
+ <追記>
48
+
49
+ 以下ソースコードを掲示します。
50
+
51
+
52
+
53
+ ```lang-<C>
54
+
55
+ #include <stdio.h>
56
+
57
+ #include <string.h>
58
+
59
+ #include <errno.h>
60
+
61
+
62
+
63
+ int main()
64
+
65
+ {
66
+
67
+ FILE* fp;
68
+
69
+ char filename[256];
70
+
71
+ char path[256];
72
+
73
+ char buf[256];
74
+
75
+ fgets(buf,256,stdin);
76
+
77
+ strcpy(filename,buf+4);
78
+
79
+ sprintf(path,"/home/user/%s",filename);
80
+
81
+ printf("path=[%s]\n", path);
82
+
83
+
84
+
85
+ fp = fopen( path, "r" );
86
+
87
+ if( fp == NULL )
88
+
89
+ {
90
+
91
+ fprintf(stderr, "file [%s] open error: %s\n", path, strerror(errno));
92
+
93
+ return -1;
94
+
95
+ }
96
+
97
+
98
+
99
+ fclose(fp);
100
+
101
+
102
+
103
+ return 0;
104
+
105
+ }
106
+
107
+
108
+
109
+ ```
110
+
111
+ argius様から頂いたコードにfgetsを加えたものです。
112
+
113
+ fgets関数でユーザは"GET text.txt"と入力すると
114
+
115
+ /home/user/text.txt
116
+
117
+ のファイルを開くというプログラムを作りたいのですが、うまくいきませんでした。
118
+
119
+ クライアントが指定したファイルをサーバが開いて読み込む、というプログラムを作ってみたいと思い、今回質問させていただきました。
120
+
121
+ サーバ側のソースコードは長く、分かりにくいので、
122
+
123
+ うまくいかない部分を抜粋してソースコードを掲示してあります。