0

私はファイルの場所を取得しようとしています .D\stuff.tif 私のプログラムでは次のような文字列です.

 filename = 'D:\stuff.tif'  

この形式で必要なので、ここで私が試したこと:

  char text[50];// = "filename = ";
   char filep [50];
   printf("get file name ") ;
   scanf("%s",&filep);
   sprintf(text," filename = \' %s \'",filep);

それはアイデアを動作しませんか?? あなたの助けを前もってありがとう!

4

3 に答える 3

1

あなたが書いたのは C++ ではなく C であることに気付きましたか? C++ では、次のようにします。

#include <iostream>
#include <string>

int main()
{
    std::string text, filep;
    std::cout << "get file name ";
    std::cin >> filep;
    text = " filename = '" + filep + "'";
}
于 2013-02-01T11:20:45.363 に答える
0

これを試して

char text[255];// = "filename = ";
char filep [50];
printf("get file name ") ;
scanf("%s",filep);
sprintf(text," filename = \'%s\'",filep);
于 2013-02-01T11:08:06.863 に答える
0

scanfchar *引数としてaを取る必要があります。あなたはそれchar (*)[50]にアドレスを取ることによってそれを与えていますfilep。試す:

  char text[50];// = "filename = ";
   char filep [50];
   printf("get file name ") ;
   scanf("%s",filep);  // <- removed address-of here
   sprintf(text," filename = \' %s \'",filep);
于 2013-02-01T11:10:15.383 に答える