Rumah > pembangunan bahagian belakang > Tutorial C#.Net > Argumen Baris Perintah C#

Argumen Baris Perintah C#

王林
Lepaskan: 2024-09-03 15:07:09
asal
1173 orang telah melayarinya

Dalam C#, pelaksanaan program bermula daripada kaedah main(). Kaedah utama () tidak menerima hujah daripada mana-mana kaedah lain, tetapi ia menerima hujah yang dihantar kepadanya daripada pengguna melalui baris arahan, dan hujah ini dipanggil hujah baris arahan. Berikut ialah beberapa perkara penting berkenaan argumen baris arahan dalam C#:

  • Kaedah utama () menerima hujah yang diluluskan oleh pengguna dalam tatasusunan rentetan jenis.
  • Ia menerima hujah semasa pelaksanaan program.
  • Pengguna boleh menukar argumen jenis rentetan ini kepada jenis lain dalam C# menggunakan kaedah Convert class atau Parse().

Sintaks dengan penjelasan

Sintaks kaedah Main() yang mengambil hujah baris arahan adalah seperti berikut:

static void Main(string[] args)
{
//user code
}
Salin selepas log masuk

Dalam sintaks di atas, 'statik' ialah kata kunci yang menunjukkan bahawa kaedah Utama() boleh dilaksanakan tanpa sebarang contoh. 'kosong' ialah jenis pulangan. 'Utama' menunjukkan bahawa ini ialah kaedah Utama() program kami, dan 'rentetan[]' ialah jenis hujah yang dihantar kepada kaedah tersebut. 'args' ialah nama yang ditakrifkan pengguna yang diberikan kepada hujah.

Bagaimana Argumen Baris Perintah Berfungsi dalam C#?

Argumen baris arahan dihantar ke kaedah Main() sebagai tatasusunan rentetan jenis supaya kami boleh menghantar n bilangan parameter semasa menjalankan program kami.

Contoh:

public static void Main(string[] args)
{
//user code
}
Salin selepas log masuk

Apabila kita menghantar parameter kepada kaedah Utama() di atas, ia akan dilihat oleh pembolehubah 'args', tatasusunan rentetan jenis. Kemudian, kita boleh mengakses hujah individu daripada tatasusunan ini menggunakan kedudukan indeks.

Terdahulu, setiap elemen yang diluluskan akan menjadi rentetan jenis yang boleh ditukar kemudian kepada jenis data yang diperlukan menggunakan kelas Convert atau kaedah Parse() yang disediakan oleh C# seperti yang ditunjukkan dalam contoh di bawah:

long num = long.Parse(args[0]);
Salin selepas log masuk

Pernyataan di atas akan menukar argumen yang ada pada nombor indeks 0 kepada nilai 'panjang' yang setara menggunakan kaedah Parse() dan kemudian ia akan disimpan dalam pembolehubah' num,' yang jenis' panjang.'

int num = Convert.ToInt32(args[1]);
Salin selepas log masuk

Pernyataan ini akan menukar hujah yang ada pada indeks nombor 1 kepada integer bertanda 32-bit yang setara, dan kemudian ia akan disimpan dalam pembolehubah 'num', yang jenis 'int.'

Kami juga boleh menyemak kewujudan argumen baris arahan, iaitu, untuk menyemak sama ada argumen dihantar ke kaedah Main() atau tidak menggunakan sifat 'Length' seperti yang ditunjukkan di bawah:

if (args.Length > 0)
{
System.Console.WriteLine("Arguments passed");
}
else
{
System.Console.WriteLine("Arguments are not passed");
}
Salin selepas log masuk

Untuk aplikasi windows forms, untuk mendayakan argumen baris perintah dalam kaedah Main(), kita perlu mengubah suai tandatangan kaedah Main() dalam fail 'program.cs'. Ini kerana pereka bentuk windows menjana kod yang mengandungi kaedah Main() tanpa parameter input.

Jika anda bekerja dengan C# dalam studio visual, maka terdapat cara yang bagus untuk memasukkan argumen baris perintah untuk kaedah Main() dalam studio visual. Berikut adalah beberapa langkah untuk ini:

  1. Klik kanan pada projek anda yang mengandungi kaedah utama () peneroka penyelesaian.
  2. Klik pada ‘Properties’
  3. Pada tetingkap Properties, pergi ke tab ‘Debug’
  4. Dalam Nyahpepijat, akan terdapat kotak teks yang menyatakan ‘Argumen baris perintah.’

Kita boleh memasukkan argumen baris perintah dalam kotak teks ini, setiap satu dipisahkan oleh ruang. Sila cari di bawah tangkapan skrin yang sama:

Argumen Baris Perintah C#

Contoh Argumen Baris Perintah C#

Contoh yang berbeza dinyatakan di bawah:

Contoh #1

Sebagai contoh, mengambil sepuluh nombor integer sebagai input daripada pengguna melalui argumen baris arahan dan menyemak ganjil dan genap antara nombor ini.

Kod:

using System;
using System.IO;
using System.Collections.Generic;
namespace ConsoleApp4
{
class Program
{
public static void Main(string[] args)
{
List<int> evenArray = new List<int>();
List<int> oddArray = new List<int>();
try
{
//checking if any argument exists
if (args.Length == 0)
{
Console.WriteLine("Please enter numbers to check for odd even!");
return;
}
//accessing arguments using for loop
for (int i = 0; i < args.Length; i++)
{
//checking for odd and even
if ((Convert.ToInt32(args[i]) % 2) == 0)
{
evenArray.Add(Convert.ToInt32(args[i]));
}
else
{
oddArray.Add(Convert.ToInt32(args[i]));
}
}
//displaying all the numbers entered
Console.WriteLine("Numbers entered:");
for (int i = 0; i < args.Length; i++)
{
Console.WriteLine(args[i]);
}
//displaying even numbers entered
Console.WriteLine("\nEven numbers: ");
for (int i = 0; i < evenArray.Count; i++)
{
Console.WriteLine(evenArray[i]);
}
//displaying odd numbers entered
Console.WriteLine("\nOdd numbers: ");
for (int i = 0; i < oddArray.Count; i++)
{
Console.WriteLine(oddArray[i]);
}
Console.ReadLine();
}
catch(Exception ex)
{
Console.WriteLine(ex.Message);
}
}
}
}
Salin selepas log masuk

Output:

Argumen Baris Perintah C#

Tangkapan skrin yang mengandungi arahan untuk menjalankan program di atas dengan input yang dimasukkan dan dengan output yang diterima adalah seperti berikut:

Contoh #2

Sebagai contoh, mengambil nombor daripada pengguna melalui baris arahan dan mengira pemfaktorannya.

Kod:

using System;
using System.IO;
using System.Collections.Generic;
namespace ConsoleApp4
{
class Program
{
public static void Main(string[] args)
{
int number;
int factorial;
try
{
//checking if any argument exists
if (args.Length == 0)
{
Console.WriteLine("Please enter a number to calculate " +
"its factorial!");
return;
}
if(args.Length > 1)
{
Console.WriteLine("Please enter only one number.");
return;
}
Console.WriteLine("The number entered is: " + args[0]);
number = Convert.ToInt32(args[0]);
factorial = number;
//calculating factorial of number using 'for' loop
for(int i = number - 1; i >= 1; i--)
{
factorial = factorial * i;
}
Console.WriteLine("Factorial of {0} is {1}: ", args[0], factorial);
Console.ReadLine();
}
catch(Exception ex)
{
Console.WriteLine(ex.Message);
}
}
}
}
Salin selepas log masuk

Output:

Argumen Baris Perintah C#

Tangkapan skrin yang mengandungi arahan untuk menjalankan program di atas dengan nombor yang dimasukkan dan dengan output yang diterima adalah seperti berikut:

Nota: Kami telah melaksanakan dua program di atas menggunakan "Prompt Perintah Pembangun untuk VS 2019". Kami juga boleh melaksanakan program ini daripada studio visual dengan menyediakan hujah baris arahan melalui kotak teks 'Argumen baris perintah' dalam pilihan 'Debug' studio visual.

Kesimpulan

Argumen baris arahan ialah parameter yang dihantar daripada pengguna kepada kaedah Utama() program menggunakan baris arahan. Pengguna memasukkan argumen ini semasa pelaksanaan program. Argumen ini diterima oleh kaedah Main() dalam tatasusunan rentetan jenis.

Atas ialah kandungan terperinci Argumen Baris Perintah C#. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan