>> DAVID MALAN: Katakan kita ingin menulis satu program yang meminta pengguna
untuk rentetan dan kemudian capitalizes tali itu.
Nah, mari kita mulakan dengan beberapa biasa kod mengisytiharkan tali yang dipanggil dan
memberikan ia kembali nilai getstring.
Dan mari kita kini meneruskan melelar lebih watak-watak dalam rentetan ini.
Nah, bagaimana untuk melakukannya?
Ia ternyata bahawa rentetan hanya jujukan aksara, tetapi lebih
betul, tali adalah pelbagai watak-watak, yang bermaksud kita boleh menggunakan
persegi notasi kurungan kepada indeks ke dalam rentetan dan mendapat sekurang-individu
aksara.
>> Dalam erti kata lain, kita boleh yang berikut:.
Untuk int, i mendapat 0 dan n mendapat, mengatakan, panjang s, dengan menggunakan
fungsi [kita? kacau?]
[? line,?]
i adalah kurang daripada n i + +.
Dalam erti kata lain, dengan gelung ini, kami akan melelar atas segala surat n
dalam rentetan s.
Dan dalam gelung ini, saya akan cek, jika i-ke-watak dalam s
lebih besar daripada atau sama dengan huruf kecil a, dan i-ke-watak adalah kurang daripada atau
sama dengan c huruf kecil, maka saya ingin meneruskan untuk mengambil kesempatan surat itu.
Dalam erti kata lain, saya ingin mencetak% c sebagai pemegang tempat dan pemain gantian dalam untuk
kurungan yang pemegang tempat s i.
>> Tetapi saya perlu menukar s kurungan i kepada huruf besar.
Untuk melakukan ini, saya hanya boleh menolak apa perbezaan antara
huruf kecil dan modal A. Well, saya sebenarnya masih ingat bahawa modal adalah
65 di ASCII, dan huruf kecil adalah 97.
Jadi perbezaan tersebut secara teknikal 32.
Jadi saya boleh hanya kod keras 32 di sini.
Tetapi saya mungkin tidak semestinya ingat nombor-nombor.
>> Dan lebih-lebih lagi, bagaimana jika mereka berbeza-beza oleh komputer?
Kemungkinan besar mereka tidak.
Tetapi titik tetap bahawa saya masih boleh umum bahawa ungkapan aritmetik
sebagai hanya apa sahaja perbezaan adalah antara huruf kecil dan modal A
adalah apa yang saya mahu tolak off dari ini huruf kecil tertentu.
>> Sekarang, jika surat tertentu ini tidak huruf kecil, saya hanya
mahu mencetak.
printf,% c sebagai pemegang tempat saya, s kurungan i.
Di bahagian bawah program ini, mari kita hanya mencetak newline supaya saya
segera muncul di baru garis sendiri.
>> Sekarang mari kita menyusun program ini dengan make capitalize0.
Mari kita menjalankannya dengan capitalize0.
Dan mari kita taip perkataan seperti hello dalam semua huruf kecil.
Saya balik HELLO huruf besar seperti yang diharapkan.
Tetapi mari kita cuba satu ujian lebih, kali ini dengan nama saya sendiri, D-A-V-I-D, tetapi dengan
D pertama dipermodalkan, hanya dalam kes saya merosakkan sesuatu sehingga
dengan char pertama.
Masukkan, dan D-A-V-I-D dalam huruf besar dicetak juga.