Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> Bahasa C

String Pemrograman C

String Pemrograman C

Dalam tutorial ini, Anda akan belajar tentang string dalam pemrograman C. Anda akan belajar mendeklarasikannya, menginisialisasinya, dan menggunakannya untuk berbagai operasi I/O dengan bantuan contoh.

Dalam pemrograman C, string adalah urutan karakter yang diakhiri dengan karakter null \0 . Misalnya:

char c[] = "c string";

Ketika kompiler menemukan urutan karakter yang diapit tanda kutip ganda, ia menambahkan karakter null \0 di akhir secara default.


Bagaimana cara mendeklarasikan string?

Berikut cara mendeklarasikan string:

char s[5];

Di sini, kami telah mendeklarasikan string 5 karakter.


Bagaimana cara menginisialisasi string?

Anda dapat menginisialisasi string dalam beberapa cara.

char c[] = "abcd";

char c[50] = "abcd";

char c[] = {'a', 'b', 'c', 'd', '\0'};

char c[5] = {'a', 'b', 'c', 'd', '\0'};

Mari kita ambil contoh lain:

char c[5] = "abcde";

Di sini, kami mencoba untuk menetapkan 6 karakter (karakter terakhir adalah '\0' ) ke char array yang memiliki 5 karakter. Ini buruk dan Anda tidak boleh melakukan ini.


Menetapkan Nilai ke String

Array dan string adalah warga kelas dua di C; mereka tidak mendukung operator penugasan setelah dideklarasikan. Misalnya,

char c[100];
c = "C programming";  // Error! array type is not assignable.

Catatan: Gunakan fungsi strcpy() untuk menyalin string sebagai gantinya.


Baca String dari pengguna

Anda dapat menggunakan scanf() berfungsi untuk membaca string.

scanf() fungsi membaca urutan karakter hingga menemukan spasi (spasi, baris baru, tab, dll.).


Contoh 1:scanf() untuk membaca string

#include <stdio.h>
int main()
{
    char name[20];
    printf("Enter name: ");
    scanf("%s", name);
    printf("Your name is %s.", name);
    return 0;
}

Keluaran

Enter name: Dennis Ritchie
Your name is Dennis.

Meskipun Dennis Ritchie dimasukkan dalam program di atas, hanya "Dennis" disimpan di name rangkaian. Itu karena ada spasi setelah Dennis .

Perhatikan juga bahwa kita telah menggunakan kode name bukannya &name dengan scanf() .

scanf("%s", name);

Ini karena nama adalah char array, dan kita tahu bahwa nama array berubah menjadi pointer di C.

Jadi, nama di scanf() sudah menunjuk ke alamat elemen pertama dalam string, itulah sebabnya kita tidak perlu menggunakan & .


Bagaimana cara membaca sebaris teks?

Anda dapat menggunakan fgets() berfungsi untuk membaca sebaris string. Dan, Anda dapat menggunakan puts() untuk menampilkan string.


Contoh 2:fgets() dan puts()

#include <stdio.h>
int main()
{
    char name[30];
    printf("Enter name: ");
    fgets(name, sizeof(name), stdin);  // read string
    printf("Name: ");
    puts(name);    // display string
    return 0;
}

Keluaran

Enter name: Tom Hanks
Name: Tom Hanks

Di sini, kami telah menggunakan fgets() berfungsi untuk membaca string dari pengguna.

fgets(name, sizeof(name), stdlin); // read string

sizeof(name) hasil menjadi 30. Oleh karena itu, kita dapat mengambil maksimal 30 karakter sebagai input yang merupakan ukuran name string.

Untuk mencetak string, kami telah menggunakan puts(name); .

Catatan: gets() fungsinya juga bisa untuk mengambil input dari pengguna. Namun, itu dihapus dari standar C.

Itu karena gets() memungkinkan Anda untuk memasukkan panjang karakter apa pun. Oleh karena itu, mungkin ada buffer overflow.


Meneruskan String ke Fungsi

String dapat diteruskan ke fungsi dengan cara yang sama seperti array. Pelajari lebih lanjut tentang meneruskan array ke suatu fungsi.


Contoh 3:Melewati string ke Fungsi

#include <stdio.h>
void displayString(char str[]);

int main()
{
    char str[50];
    printf("Enter string: ");
    fgets(str, sizeof(str), stdin);             
    displayString(str);     // Passing string to a function.    
    return 0;
}
void displayString(char str[])
{
    printf("String Output: ");
    puts(str);
}

String dan Pointer

Mirip seperti array, nama string "meluruh" ke pointer. Oleh karena itu, Anda dapat menggunakan pointer untuk memanipulasi elemen string. Kami menyarankan Anda untuk memeriksa C Array dan Pointer sebelum Anda memeriksa contoh ini.


Contoh 4:String dan Pointer

#include <stdio.h>

int main(void) {
  char name[] = "Harry Potter";

  printf("%c", *name);     // Output: H
  printf("%c", *(name+1));   // Output: a
  printf("%c", *(name+7));   // Output: o

  char *namePtr;

  namePtr = name;
  printf("%c", *namePtr);     // Output: H
  printf("%c", *(namePtr+1));   // Output: a
  printf("%c", *(namePtr+7));   // Output: o
}

Fungsi String yang Umum Digunakan

  • strlen() - menghitung panjang string
  • strcpy() - menyalin string ke yang lain
  • strcmp() - membandingkan dua string
  • strcat() - menggabungkan dua string

Bahasa C

  1. C# String
  2. Ruang nama dalam Pemrograman C#
  3. Melewati Array ke Fungsi dalam Pemrograman C++
  4. String Jawa
  5. String enum Java
  6. C++ String:strcpy(), strcat(), strlen(), strcmp() CONTOH
  7. String di C:Cara Mendeklarasikan Variabel, Inisialisasi, Cetak, Contoh
  8. String Python:Ganti, Gabung, Pisahkan, Balik, Huruf Besar &Huruf Kecil
  9. C Tutorial
  10. Java - Kelas String