Cプログラミング
 Computer >> コンピューター >  >> プログラミング >> Cプログラミング

C / C ++のSystem()関数


与えられたタスクは、C / C ++でのsystem()の動作を示すことです。

system()関数は、C /C++標準ライブラリの一部です。コマンドプロセッサまたはオペレーティングシステムの端末で実行できるコマンドを渡すために使用され、完了後に最終的にコマンドを返します。

この関数を呼び出すには、またはを含める必要があります。

構文

構文は次のとおりです-

int system(char command)

コマンドがエラーなしで実行された場合、この関数はゼロを返します。

Input: system(“date”)
Output: The current date is: Fri 12/27/2019

説明 −次の例は、システム関数を使用して現在の日付を表示する方法を示しています。出力は、オペレーティングシステムのコマンドプロセッサ内に表示されます。これは、system()関数を使用して、ターミナルコマンドまたはコマンドプロセッサ内で使用されるコマンドを実行する方法を示しています。

Input: system(“color a”)
Output:

C / C ++のSystem()関数

次の例は、実行するコマンドを含む文字列を渡すだけで、system()関数を使用する方法を示しています。ここでは、コマンドプロセッサでテキストの色を変更するために使用される「colora」コマンドを指定しました。ここでは正しく機能します。

以下のプログラムで使用されるアプローチは次のとおりです

  • 最初にchar型の変数を作成し、それに適切なサイズ、たとえばcmd [10]を指定して、この文字列をコマンドの格納に使用できるようにします。
  • 次に、strcpy()関数を使用して、前に作成した文字列に目的のコマンドを格納します。 (strcpy()関数を使用するには、ヘッダーファイルをインクルードしてください)
  • 次に、コマンドを格納している文字列をシステム関数に渡します。

アルゴリズム

Start
Step 1-> In function main()
   Declare a char cmd[10]
   Call function strcpy(cmd, “dir”)
   Call function system(cmd)
Stop

#include <iostream>
#include<stdlib.h>
#include<string.h>
using namespace std;
int main() {
   char cmd[10];
   strcpy(cmd,"dir");
   system(cmd);
   return0;
}

出力

上記のコードを実行すると、次の出力が生成されます-

12/25/2019 10:04 AM <DIR> .
12/25/2019 06:33 AM <DIR> ..
12/24/2019 09:56 AM <DIR> bin
12/25/2019 10:04 AM 183 main.cpp
12/25/2019 10:04 AM 1,564,278 main.exe
12/25/2019 06:33 AM 1,046 main.o
12/24/2019 06:33 AM <DIR> obj
12/24/2019 06:33 AM 1,062 Test.cbp
12/24/2019 06:36 AM 358 Test.layout
5 File<s> 1,566,927 bytes
4 Dir<s> 169,866,692,120 bytes free

ここでは、システム関数「dir」コマンドを入力として指定しているため、その代わりに、コンピューターに存在するすべてのディレクトリが出力として表示されます。

次の方法を使用して、コマンドプロセッサがオペレーティングシステムで使用可能かどうかを確認できます

これは、nullポインタをsystem()関数に渡すことで実行できます。システムがゼロ以外の値を返す場合は、コマンドプロセッサが使用可能であることを意味します。

それ以外の場合、システムがゼロを返す場合は、コマンドプロセッサが存在せず、system()関数を呼び出すことができないことを意味します。

#include <iostream>
#include<stdlib.h>
using namespace std;
int main() {
   if(system(Null))
      cout<<”Command Processor is present”;
   else
      cout<<”Command processor is not present”;
   return 0;
}

  1. C / C ++のiswblank()関数

    関数iswblank()は、渡されたワイド文字が空白かどうかを確認するために使用されます。これは基本的にスペース文字であり、タブ文字(\ t)も考慮します。この関数は、C言語の「ctype.h」ヘッダーファイルとC++言語の「cctype」ヘッダーファイルで宣言されています。 C ++言語でのisblank()の構文は次のとおりです。 int iswblank(wint_t char); これは、C ++言語でのiswblank()の例です。 例 #include <ctype.h> #include <iostream> using namespace std;

  2. C / C ++のiswlower()関数

    関数iswlower()は、C /C++の組み込み関数です。ワイド文字が小文字かどうかをチェックします。 C ++言語では「cwctype」ヘッダーファイルで宣言され、C言語では「ctype.h」で宣言されます。ワイド文字と呼ばれる単一の文字を取ります。文字が小文字でない場合は、zero(0)を返します。文字が小文字の場合、ゼロ以外の値を返します。 C / C ++言語でのiswlower()の構文は次のとおりです。 int iswlower(ch); これは、C ++言語でのiswlower()の例です。 例 #include <cwctype> #include <i