3

D:\demo.txtas\dはエスケープ文字と見なされるため、使用する必要があることだけは知っていましD:\\demo.txtた。Windows で CodeBlocks を使用しています。これらのパスの形式のどれが私のプラットフォームの C で有効かを知りたいです。D:/demo.txt/

#include<stdio.h>

int main()
{
char ch;
FILE *fp,*tp;
fp=fopen("D:\\source.txt","r");
//fp=fopen("D:/source.txt","r");
tp=fopen("D:\\encrypt.txt","w");
//tp=fopen("D:/encrypt.txt","w");
if(fp==NULL||tp==NULL)
printf("ERROR");
while((ch=getc(fp))!=EOF)
putc(~ch,tp);
fclose(fp);
fclose(tp);
}
4

2 に答える 2

4

Windows (それ以前の MS-DOS など) では、Windows に組み込まれている/提供されているコマンド ライン ツールのパス区切りとしてバックスラッシュが必要です。

ただし、内部関数は常にスラッシュまたはバックスラッシュを交換可能に受け入れてきました。個人的には、一般的な規則としてスラッシュを好みますが、それは主に個人的な好みであり、どちらでも問題なく機能します。

于 2013-05-10T03:37:27.843 に答える