ファイルへ書くこと
データはfputcおよびfprintfを使用してファイルに書くことができる。 次の例はfgetcおよびfputcテキスト・ファイルのコピーを撮るのに機能を使用する。
#include <stdio.h>
int main()
{
FILE *in, *out;
int key;
if ((in = fopen("tarun.txt", "r")) == NULL)
{
puts("Unable to open the file");
return 0;
}
out = fopen("copy.txt", "w");
while (!feof(in))
{
key = fgetc(in);
if (!feof(in))
fputc(key, out);
}
fclose(in);
fclose(out);
return 0;
}
fprintf機能がファイルに定様式データを書くのに使用することができる。
fprintf(out, "Date: %02d/%02d/%02d\n",
day, month, year);
cのコマンド・ライン議論
主要な()機能を宣言するためのansi c定義は次のいずれかである:
int main() or int main(int argc, char **argv)
第2版は議論がコマンド・ラインから渡されるようにする。 変数argcは議論のカウンター、コマンド・ラインから渡される変数の数を含んでいる。 変数argvは渡される実際のパラメータを表すひもへポインターの配列である議論ベクトルである。
次の例は議論のいくつもがコマンド・ラインから渡されるようにし、それらを印刷する。 argv [0]実際のプログラムである。 プログラムはコマンド指示から動かなければならない。
#include <stdio.h>
int main(int argc, char **argv)
{
int counter;
puts("The arguments to the program are:");
for (counter=0; counter<argc; counter++)
puts(argv[counter]);
return 0;
}
プログラム名がcount.c、コマンド・ラインから次の通り呼ばれてもよい。
count 3
or
count 7
or
count 192 etc.
次の例新しいファイルにテキスト・ファイルをコピーするためにルーチンを扱うファイルを使用する。 例えばコマンド・ライン議論は次のように呼ぶことができる:
txtcpy one.txt two.txt
#include <stdio.h>
int main(int argc, char **argv)
{
FILE *in, *out;
int key;
if (argc < 3)
{
puts("Usage: txtcpy source destination\n");
puts("The source must be an existing file");
puts("If the destination file exists, it will be
overwritten");
return 0;
}
if ((in = fopen(argv[1], "r")) == NULL)
{
puts("Unable to open the file to be copied");
return 0;
}
if ((out = fopen(argv[2], "w")) == NULL)
{
puts("Unable to open the output file");
return 0;
}
while (!feof(in))
{
key = fgetc(in);
if (!feof(in))
fputc(key, out);
}
fclose(in);
fclose(out);
return 0;
}
|