დევიდ ჯ Malan: ვარაუდობენ, რომ მინდა განახორციელოს პროგრამა, რომელიც თხოვს მომხმარებელს სიმებიანი და შემდეგ აგრძელებს ესარგებლა მათი შეყვანა, კონვერტაცია ნებისმიერ ამას წერილები რომ ტიპის ზედა. კარგად, მოდით წავიდეთ წინ და განახორციელოს, რომ პროგრამა. მოდით პირველ მოიცავს cs50.h მოჰყვა by მოიცავს stdio.h. და ისე, რომ ჩვენ შეგვიძლია გამოვიყენოთ strlen, მოდით მოიცავს string.h. მოდით მომდევნო აცხადებენ, მთავარი როგორც int ძირითადი void და მოდით ახლა გაგრძელება უბიძგონ მომხმარებელს სიმებიანი. Printf, მოდით შეგახსენებთ მათ ზოგიერთი შეყვანის. ახლა მოდით განაცხადოს string - ჩვენ მოვუწოდებთ მას s - და ვინახავთ ეს შედეგი მოუწოდებს CS50 ბიბლიოთეკა ფუნქცია GetString. მოდით ახლა გაგრძელება iterate მეტი თითოეული სიმბოლოების s, capitalizing ნებისმიერი მხედრულ ასოებით, რომ ჩვენ ვხედავთ. განთავსების int, მივიღებ 0. მოდით ასევე აცხადებენ, n, როგორც თანაბარი სიმებიანი სიგრძე s ასე რომ ჩვენ შეგვიძლია iterate საწყისი i წლამდე n, ხანგრძლივობა s, და ყოველი iteration ბიჯი i. და შემდეგ შიგნით ამ მარყუჟის, მოდით პირველი გამშვები მიმდინარე წერილი - i-th წერილი s, ასე ვთქვათ - ამას წერილში. თუ bracket i მეტია ან ტოლია to მხედრულ და ეს ნაკლებად მეტი ან ტოლია ამას z - ახლა თუ ჩვენ აკონვერტირებთ ამას წერილი ზედა, გავიხსენოთ, პირველი, in ASCII ამას 97 და ზედა არის 65. იმავდროულად, ამას ბ 98, და ზედა B არის 66. თუ ჩვენ გავაგრძელებთ შევხედოთ, რომ ნიმუში, ჩვენ დავინახავთ, რომ ამას წერილები ყოველთვის 32 ღირებულებების უმაღლესი ვიდრე ზედა წერილები. ასე რომ, თუ ჩვენ გვინდა, რომ გადაიყვანოთ ამას ზედა, იგი უნდა საკმარისია, მართლაც, გამოვაკლოთ 32 მომხმარებელს შეყვანის. ან უფრო ზოგადად, მხოლოდ სხვაობა, რომ განსხვავება ამას და კაპიტალური ა როგორ უნდა გამოხატოს, რომ? კარგად, მოდით გავაკეთოთ კოდი. Printf, გაცემა, unquote "% c" to print მიმდინარე ხასიათი, რასაც მოჰყვა ბეჭდვა, რაც არის ნანახია bracket i minus შედეგი აკეთებს ამას მინუს ზედა მძიმით. სხვა სიტყვებით, ეს ჩართული გამოხატვის, პატარა მინუს დიდი, არის დაბრუნებას აპირებს us at დღის ბოლოს 32. მაგრამ მე არ უნდა გვახსოვდეს, ის, რომ 32. შემიძლია დაუშვას კომპიუტერული გაერკვნენ რა განსხვავებაა ამას და კაპიტალის არის. ამასობაში, კიდევ ვიცი, რომ განსხვავება, შემიძლია გამოვაკლოთ ეს s bracket i, რომელიც მიიღებს რა სავარაუდოდ, ამას წერილი ქვედა ღირებულება, კერძოდ, ღირებულება, რომელიც რუკები გადატანა ზედა ექვივალენტი. მოდით ახლა გადარჩენა, კომპილაციის, და აწარმოებს ამ პროგრამის. რათა ესარგებლა dot slash კაპიტალიზაცია. და ჩემი შეყვანის იქნება hello. და არ გვაქვს, hello. ახლა ჩემი სწრაფი, მართლაც, არის ოდნავ მახინჯი, იმიტომ, რომ ჩვენ გამოტოვებული ერთი ცოტა ბეჭდვა. და მოდით დავუბრუნდეთ და დავამატო, რომ. ძალიან ბოლოში ამ პროგრამის მე ძალიან მარტივად, და ძირითადად ესთეტიკური მიზნით, აპირებს დაამატოთ printf, ციტირებით unquote backslash n. მოდით resave ფაილის recompile, გამეორება. რათა ესარგებლა, dot slash ესარგებლა. ერთხელ, შეყვანის მე გთავაზობთ "Hello" ყველა ქვედა და ახლა დააჭიროთ, და "Hello", ბევრად უფრო cleanly დაბეჭდილი.