logo

Stīgu masīvs C

Programmēšanā C virkne ir 1-D rakstzīmju masīvs un tiek definēts kā rakstzīmju masīvs. Bet virkņu masīvs C ir divdimensiju rakstzīmju tipu masīvs. Katra virkne tiek pabeigta ar nulles rakstzīmi ( ). Tā ir 2D masīva lietojumprogramma.

Sintakse:



java izlases matemātika nejauši
char variable_name[r] = {list of string};>

Šeit,

    var_nosaukums ir C mainīgā nosaukums. r ir maksimālais virknes vērtību skaits, ko var saglabāt virkņu masīvā. c ir maksimālais rakstzīmju vērtību skaits, ko var saglabāt katrā virknes masīvā.

Piemērs:

C








// C Program to print Array> // of strings> #include> // Driver code> int> main()> {> >char> arr[3][10] = {>'Geek'>,> >'Geeks'>,>'Geekfor'>};> >printf>(>'String array Elements are: '>);> > >for> (>int> i = 0; i <3; i++)> >{> >printf>(>'%s '>, arr[i]);> >}> >return> 0;> }>

>

>

Java atsauces veidi
Izvade

String array Elements are: Geek Geeks Geekfor>

Zemāk ir iepriekš minētās programmas attēlojums

Stīgu masīva attēlojums atmiņā

Mūsu virkņu masīvā ir norādītas 3 rindas un 10 kolonnas, taču iepriekšējas norādīšanas dēļ virkņu masīva lielums ir liels vietas patēriņš. Tātad, lai izvairītos no liela vietas patēriņa mūsu programmā, mēs varam izmantot rādītāju masīvu C.

Nederīgas darbības virkņu masīvos

Mēs nevaram tieši mainīt vai piešķirt vērtības virkņu masīvam C.

Piemērs:

 char arr[3][10] = {'Geek', 'Geeks', 'Geekfor'};>

Šeit arr[0] = GFG; // Tas parādīs kļūdu, kas saka piešķiršanu izteiksmei ar masīva tipu.

Lai mainītu vērtības, mēs varam izmantot strcpy () funkciju C

 strcpy(arr[0],'GFG'); // This will copy the value to the arr[0].>

Virkņu rādītāju masīvs

Programmā C mēs varam izmantot rādītāju masīvu. Tā vietā, lai izmantotu 2 dimensiju rakstzīmju masīvu, mums var būt viendimensijas rādītāju masīvs. Šeit tiek saglabāts rādītājs uz virknes literāla pirmo rakstzīmi.

Sintakse:

css pasvītrot tekstu
char *arr[] = { 'Geek', 'Geeks', 'Geekfor' };>
Virkņu rādītāju masīvs

Zemāk ir C programma, lai izdrukātu rādītāju masīvu:

C




// C Program to print Array> // of Pointers> #include> // Driver code> int> main()> {> >char> *arr[] = {>'Geek'>,>'Geeks'>,>'Geekfor'>};> >printf>(>'String array Elements are: '>);> > >for> (>int> i = 0; i <3; i++)> >{> >printf>(>'%s '>, arr[i]);> >}> >return> 0;> }>

>

sql skaits atšķiras

>

Izvade

String array Elements are: Geek Geeks Geekfor>