სიმბოლოების შექმნა და მათი ჩვენება ეკრანზე. სამკუთხედის ხატი ისრებით Samsung სმარტფონებზე: რას ნიშნავს ეს და როგორ ამოიღოთ ხატების აღნიშვნა სმარტფონზე

გამოიყენეთ ხატები აპლიკაციის სწრაფად გასაშვებად ან დოკუმენტის გასახსნელად. ამისათვის უბრალოდ ორჯერ დააწკაპუნეთ სასურველ ხატულაზე.

არსებობს კიდევ ერთი ვარიანტი პროგრამის გაშვებისთვის ან დოკუმენტის გახსნისთვის, რომელიც იმალება ხატის ქვეშ - გამოყენება კონტექსტური მენიუ.ის გამოჩნდება ხატზე დაწკაპუნებისას უფლებამაუსის ღილაკი. მოქმედებების სია, რომლებიც შეიძლება განხორციელდეს აპლიკაციაში ან დოკუმენტზე, გამოჩნდება ხატის გვერდით.

თქვენ შეგიძლიათ შექმნათ თქვენი საკუთარი საქაღალდე პირდაპირ თქვენს სამუშაო მაგიდაზე. ამისათვის დააწკაპუნეთ მაუსის მარჯვენა ღილაკით დესკტოპის უბანზე, რომელიც არ არის ფანჯრები და ხატები და კონტექსტური მენიუში, რომელიც გამოჩნდება (ნახ. 2.17) გადაიტანეთ მაუსის მაუსის შექმნა პუნქტზე. ამ მომენტში გამოჩნდება ქვემენიუ, სადაც უნდა დააჭიროთ სიტყვას Folder (ნახ. 2.18). შედეგად, სამუშაო მაგიდაზე გამოჩნდება ყვითელი საქაღალდის ხატულა, რომლის ქვეშ დაწერილია „ახალი საქაღალდე“. დაუყოვნებლივ შეიტანეთ კლავიატურაზე საქაღალდის მოფიქრებული სახელი (ნახ. 2.19) და შემდეგ დააჭირეთ კლავიატურაზე Enter ღილაკს. შეიქმნა ახალი საქაღალდე.

ბრინჯი. 2.17. კონტექსტური მენიუს დარეკვა

ბრინჯი. 2.18.საქაღალდის შექმნა

დესკტოპიდან საქაღალდის წასაშლელად, უბრალოდ დააწკაპუნეთ მის ხატულაზე და შემდეგ დააჭირეთ კლავიატურაზე Delete (Del) ღილაკს.

ბრინჯი. 2.19.საქაღალდის სახელის შეყვანა

დავალების ზოლი

ეკრანის ბოლოში არის ზოლები ღილაკით და ხატებით. ეს პანელიდავალებები.ღილაკი

Start (დაწყება) სამუშაო ზოლის მარცხენა კიდეზე ემსახურება Windows 7-ის მთავარ მენიუს გამოძახებას. ღილაკის მარჯვნივ


ემსახურება ბრაუზერის გახსნას (აპლიკაცია ინტერნეტის დასათვალიერებლად);


დაწყებას აქვს რამდენიმე ხატი (ჩვეულებრივ სამი). ეს არის ღილაკები ზოგიერთი აპლიკაციის სწრაფად გაშვებისთვის. მოდით შევხედოთ თითოეულ მათგანს.

იწყებს Explorer - აპლიკაციას ფაილებთან და საქაღალდეებთან მუშაობისთვის;

ხსნის Windows Media ვიდეო და აუდიო პლეერს.

Taskbar-ის მარჯვენა კიდეზე არის მართკუთხედის სახით გაკეთებული ღილაკი. ამ ღილაკზე დაწკაპუნებისას ყველა ღია ფანჯარა მინიმუმამდეა დაყვანილი, რაც ათავისუფლებს სამუშაო მაგიდას.

ამ ღილაკის მარცხნივ ნაჩვენებია მიმდინარე დრო და თარიღი. თუ მაუსის ამ მდებარეობისკენ მიიზიდავთ, მართკუთხედი, რომელიც გამოჩნდება, აჩვენებს თარიღს ასოთი, რომელიც მიუთითებს კვირის თვესა და დღეს.


თარიღის გვერდით არის დინამიკის ხატულა

სპიკერის ხატის მარცხნივ შეგიძლიათ იხილოთ ქსელის მზადყოფნის ხატულა. თუ ჯვარი აქვს

სისტემა ვერ უკავშირდება ქსელს. მაგალითად, კაბელი არ არის დაკავშირებული კომპიუტერის ქსელის ბარათთან ან სისტემამ ვერ იპოვა დრაივერი დამონტაჟებული ქსელის ბარათისთვის.

ამ ჯგუფის ყველაზე მარცხენა ელემენტი არის მიმდინარე ენის მაჩვენებელი. როგორც წესი, რუსიფიცირებულ ოპერაციულ სისტემებში არჩევანი ორ ენას შორისაა - რუსული ან ინგლისური. RU მნიშვნელობა მიუთითებს, რომ რუსული ასოები გამოჩნდება კლავიატურიდან ტექსტის შეყვანისას. თუ ინდიკატორი აჩვენებს მნიშვნელობას EN, შეიყვანება ლათინური ასოები.


ბრინჯი. 2.21. ენის შერჩევის მენიუ


ენის გადასართავად შეგიძლიათ დააჭიროთ ენის ინდიკატორს და გამოჩენილ მენიუში აირჩიოთ სასურველი ენა (სურ. 2.21).

TO გარდა ამისა, კლავიშთა კომბინაცია გამოიყენება ენის გადასართავად. თქვენ შეგიძლიათ აირჩიოთ რამდენიმე ვარიანტის კომბინაცია. ნაგულისხმევად (ანუ დაუყოვნებლივ, დამატებითი პარამეტრების გარეშე), ენა იცვლება კლავიშების კომბინაციის გამოყენებით ალტ+ ცვლა (Ctrl+ცვლა).

სხვა ენების დასამატებლად, თქვენ უნდა აირჩიოთ ბრძანება „ოფციები“ ენის გადამრთველის კონტექსტურ მენიუში, ხოლო დიალოგურ ფანჯარაში „ზოგადი“ ჩანართზე დააწკაპუნეთ ღილაკზე „დამატება“. "კლავიატურის გადართვა" ჩანართზე შეგიძლიათ შეცვალოთ კლავიატურის მალსახმობი უფრო მოსახერხებელზე.

აპლიკაციების გაშვების ღილაკები გამოჩნდება სამუშაო ზოლის შუა ნაწილში. ფაქტია, რომ შეგიძლიათ ერთდროულად რამდენიმე აპლიკაციის გაშვება, რომელთაგან თითოეული Windows 7 გახსნის საკუთარ ფანჯარას. როგორც უკვე აღვნიშნეთ, შეგიძლიათ მინიმუმამდე დაიყვანოთ ფანჯრები. ამ შემთხვევაში, ფანჯარა ქრება ეკრანიდან, მაგრამ რჩება ღილაკის სახით სამუშაო პანელზე. ნებისმიერ დროს შეგიძლიათ დააწკაპუნოთ ღილაკზე სამუშაო პანელზე და გაიხსნება შესაბამისი ფანჯარა. უფრო მეტიც, ის გააქტიურდება, ანუ იქნება სხვა ღია ფანჯრების თავზე.

ამა თუ იმ ფანჯრის გააქტიურება შეგიძლიათ ან მასზე მაუსის დაწკაპუნებით, ან ამ ფანჯრის ღილაკზე დაწკაპუნებით Taskbar-ზე. თქვენ ასევე შეგიძლიათ გამოიყენოთ კლავიშების კომბინაცია Alt+Tab ფანჯრებს შორის მარცხნიდან მარჯვნივ გადასართავად (Alt+Shift+Tab - მარჯვნიდან მარცხნივ, ან გეჭიროთ Alt და გამოიყენეთ ისრიანი ღილაკები თქვენს კლავიატურაზე). თუ იყენებთ Aero თემას, შეგიძლიათ გამოიყენოთ Win+Tab კლავიშების კომბინაცია.

iPhone ეკრანის ზედა ნაწილი, სადაც ეგრეთ წოდებული „სტატუსის ზოლი“ მდებარეობს, აჩვენებს ინფორმაციას ფიჭური სიგნალის სიძლიერის, მიმდინარე დროის, ბატარეის დონის და მრავალი სხვა შესახებ. გამოცდილი მომხმარებლისთვის რთული არ არის მათი გაგება, მაგრამ დამწყებთათვის ისინი ცოტა უფრო მკაფიოა, ვიდრე ძველი ეგვიპტური იეროგლიფები. გამოცდილმა ადამიანებმა ცნობისთვის და დამწყებთათვის ზეპირად ისწავლონ ჩვენი "მოტყუების ფურცელი".

ძალიან შუაში არიან უყურებს, ეს ყველაფერი გასაგებია. თუ სასურველია, საათის ჩვენება შესაძლებელია 12 ან 24 საათის რეჟიმში. ამისათვის გადადით "პარამეტრები -> ზოგადი -> თარიღი და დრო".

მარცხნივ, სტატუსის ზოლში ნაჩვენებია: სიგნალის სიძლიერე, ოპერატორის სახელი და გამოყენებული ქსელის ტიპი. მოდით უფრო ახლოს მივხედოთ აქ:

  1. სიგნალის ხარისხის მაჩვენებელი— მარცხნივ ხუთი წრე მიუთითებს ფიჭური ქსელის სიგნალის დონეზე და რაც უფრო დაჩრდილულია, მით უფრო მაღალია მიღების ხარისხი. როდესაც მხოლოდ ერთი შეღებილია, კავშირი არასტაბილურია.
  2. ოპერატორის სახელი. მნიშვნელობა " გაფართოებული" გამოჩნდება, როდესაც iPhone დაკავშირებულია სხვა ქსელთან, გარდა იმისა, რასაც თქვენი ოპერატორი იყენებს. როდესაც iPhone ეძებს ქსელს, ოპერატორის სახელის ნაცვლად გამოჩნდება „Searching“.
  3. ფიჭური მონაცემთა ქსელის ტიპი. თუ iPhone უკაბელო Wi-Fi ქსელის ნაცვლად ინტერნეტთან დასაკავშირებლად იყენებს ფიჭურ ქსელს (მობილურ ინტერნეტს), მაშინ ოპერატორის სახელს მოჰყვება ხატი, რომელიც მიუთითებს ქსელის ტიპზე. შესაძლო მნიშვნელობები: LTE, 4G, 3G, GPRS ან E (EDGE-სთვის).

P.S.: iPhone-ის ბატარეის დატენვის დონე ასევე შეიძლება ნაჩვენები იყოს პროცენტულად. ფუნქცია ჩართულია "პარამეტრები -> ზოგადი -> სტატისტიკა -> გადართვა "პროცენტში გადასახადი". არსებობს მოსაზრება (დადასტურებული არ არის), რომ ამ ინფორმაციის ჩვენება დამატებით, თუმცა ოდნავ, არ ზრდის ბატარეის დატვირთვას. პრაქტიკა გვიჩვენებს: როდესაც პროცენტები ჩართულია, მომხმარებელი იწყებს უფრო მეტად ფიქრს დატენვის დონეზე.

მიკროკონტროლერამდე და გამომავალი სიმბოლოები არსებული მასივიდან მასზე. ახლა შევეცადოთ გაერკვნენ, თუ როგორ შევქმნათ ჩვენი საკუთარი მასივები სიმბოლოებით და დავწეროთ ფუნქციები, რათა გამოჩნდეს ისინი ეკრანზე. დავიწყოთ იმით, რომ ჩვენი ეკრანის გარჩევადობა არის 96x68 პიქსელი. ეს ნიშნავს, რომ ჩვენ ვერ შევძლებთ უფრო მაღალი გარჩევადობის გამოსახულების ჩვენებას. ახლა ჩვენ უნდა შევქმნათ მასივი სურათიდან. ამ მიზნით ბევრი სხვადასხვა პროგრამაა. ჩვენ გამოვიყენებთ გამოსახულების გენერირება. არქივშია. ვისაც არ მოსწონს, შეუძლია გუგლში მოძებნოს და უამრავი სხვა მოძებნოს.

მაშ ასე, დავიწყოთ პროგრამა. დააყენეთ სურათის ზომა x, y ღერძების გასწვრივ. მაქსიმალური მნიშვნელობა არის x = 96, ხოლო y ღერძის გასწვრივ = 68. ეს რიცხვები შეიძლება იყოს უფრო მცირე, მაგრამ არა მეტი. შემდეგი, ჩვენ ავირჩევთ სკალას 8. მათ, ვისაც აქვს ძალიან მკვეთრი თვალი, ან დიდი მონიტორი, შეუძლია დატოვოს ეს მნიშვნელობა მარტო. ზომისა და მასშტაბის დაყენების შემდეგ დააწკაპუნეთ ხატულაზე „ახალი“ ან „ახალი ზომის დაყენება“. ავირჩიოთ ზომა 96x64. შემდეგი, შეგიძლიათ დააწკაპუნოთ „სურათის“ ხატულაზე და ატვირთოთ ბიტმაპი „bmp“ ფორმატში, ან დახატოთ საკუთარი მაუსის გამოყენებით. მოდით დავხატოთ საკუთარი სურათი. რა თქმა უნდა, ცუდი მხატვარი ვარ, მაგრამ ასეა. სახლი და მანქანა დავხატე. სახლი უფრო ჰგავს ტუალეტს :-) შემდეგ დააწკაპუნეთ „Array“ ხატულაზე. ჩვენ ვხედავთ სხვადასხვა რიცხვებს. ჩვენ ვაკოპირებთ მათ ჩვენს პროექტში. მოდით შევცვალოთ მასივის სახელი გრადუსი_96_64 . ეს არის მოხერხებულობისთვის. მაშინვე ნათელია, რა ზომისაა სურათი. ახლა ჩვენ უნდა როგორმე გამოვაჩინოთ იგი ეკრანზე. ამისათვის ჩვენ დავწერთ გამომავალ ფუნქციას ამ განაწილებისთვის.

/////////////////////////

void char_96_64 (char x, char y)(

ხელმოუწერელი int i;
gotoxy(x,y);
ამისთვის (i = 0; i< 96; i++)
{
}

გოტოქსი (x,y+1);
ამისთვის (i = 96; i< 192; i++)
{
lcd_write(DATA,deg_96_64[i]);
}
გოტოქსი(x,y+2);
ამისთვის (i = 192; i< 288 ; i++)
{
lcd_write(DATA,deg_96_64[i]);
}
გოტოქსი(x,y+3);
ამისთვის (i = 288; i< 384 ; i++)
{
lcd_write(DATA,deg_96_64[i]);
}
გოტოქსი(x,y+4);
ამისთვის (i = 384; i< 480; i++)
{
lcd_write(DATA,deg_96_64[i]);
}
გოტოქსი(x,y+5);
ამისთვის (i = 480; i< 576; i++)
{
lcd_write(DATA,deg_96_64[i]);
}
gotoxy(x,y+6);
ამისთვის (i = 576; i< 672; i++)
{
lcd_write(DATA,deg_96_64[i]);
}
gotoxy(x,y+7);
ამისთვის (i = 672; i< 768; i++)
{
lcd_write(DATA,deg_96_64[i]);
}

}
////////////////////////////


ნორმალური სურათი

ახლა შევეცდები ავხსნა რა არის რა. თავიდანვე არის თავად ფუნქციის სახელი. შემდეგი, გავიხსენოთ ორი რიცხვი - მნიშვნელობა x ღერძზე = 96 და რიცხვი მასივში კვადრატულ ფრჩხილებში. დავაყენოთ ადგილობრივი ცვლადი ხელმოუწერელი int i; . შემდეგ ჩვენ ვაჩვენებთ კოორდინატებს ეკრანზე ერთი ხაზის გამოსაჩენად. for მარყუჟში ვაყენებთ ცვლადის მნიშვნელობას I=0; მე<96;i++. Это означает, что мы будем читать поочередно значения из массива от 0 до 96 и выводить их на дисплей функцией

lcd_write(DATA,deg_96_64[i]);

შემდეგ დავიწყოთ სხვა ხაზით. მხოლოდ ახლა 96-დან 192-მდე. დარჩენილ რიცხვს ვამატებთ მნიშვნელობას x ღერძის გასწვრივ. ამ შემთხვევაში არის 96. მერე მესამე ხაზი და ა.შ. ასევე ყოველი ახალი ფუნქციით gotoxy(x,y); გაზარდოს ღირებულება . მგონი აქ ყველაფერი ნათელია.

ინვერსიული სურათი

ახლა ვისწავლოთ სურათის ინვერსია. ანუ გააკეთეთ დაუფერებელი ადგილები მოხატული და პირიქით. ჩვენ უნდა გავხსნათ ჩვენების ბიბლიოთეკის ფაილი notepad-ის გამოყენებით 1100.lib და იპოვეთ void lcd_init(void) ფუნქცია. იპოვეთ ხაზები მასში:

//LCd_write(CMD,0xa7); //- ინვერსიული ჩვენება

lcd_write (CMD,0xa6); //- ნორმალური ჩვენება (არა ინვერსიული)

დააკომენტარეთ არასაჭირო ხაზი და ისევ შეადგინეთ პროექტი. ყველა წყარო და გამომავალი ფუნქცია არის. ახლა მოდით გადავიდეთ პრაქტიკულ დიზაინზე - ელექტრონულზე. თუ თქვენ გაქვთ რაიმე შეკითხვები, გთხოვთ დაგვიკავშირდეთ. მომზადებული მასალა ბუზერი.

განიხილეთ სტატია სიმბოლოების შექმნა და მათი ჩვენება

Samsung-ის ახალ სმარტფონებს, რომლებიც მუშაობენ Android Oreo-ზე (Galaxy S, Galaxy Note და A სერიები) აქვთ ახალი ხატულა, რომელიც სამკუთხედს ჰგავს, შიგნით ისრებით.

როგორ გამოიყურება Samsung-ის სმარტფონებზე

ამ ფუნქციას ასევე უწოდებენ "მონაცემთა შენახვას"

სამკუთხედის ხატი ორი ისრით შიგნით გამოჩნდება ბატარეის ინდიკატორთან შეტყობინებების ზოლში.

მნიშვნელობა

"სამკუთხედი ისრებით" ხატულა ნიშნავს "ტრაფიკის დაზოგვას". როდესაც ხატულა გამოჩნდება ეკრანზე, ეს ნიშნავს, რომ ტრაფიკის დაზოგვის ფუნქცია აქტიურია.

აპლიკაციების უმეტესობას სჭირდება ინტერნეტი გასააქტიურებლად და მუშაობისთვის. როდესაც მოწყობილობა Wi-Fi ზონაშია, მომხმარებელს არ უწევს ფიქრი მობილური ტრაფიკის შესახებ. მაგრამ როგორც კი სმარტფონი ტოვებს თავისუფალ ინტერნეტ ზონას, იწყება მობილური ტრაფიკის ფლანგვა და ის გრძელდება მაშინაც კი, როცა აპლიკაცია ფონზეა. და მომხმარებელმა შეიძლება ვერც კი შეამჩნიოს, თუ როგორ არის მიღწეული ლიმიტი. დაზოგვის ფუნქცია შეიქმნა სპეციალურად მობილური ტრაფიკის დაზოგვის მიზნით.

ტრაფიკის დაზოგვა:

  • მნიშვნელოვნად ამცირებს მობილური ინტერნეტის გამოყენებას;
  • ახანგრძლივებს მოწყობილობის ბატარეის ხანგრძლივობას;
  • ბლოკავს შეტყობინებებს.

როგორ ამოიღოთ მონაცემთა შენახვის ხატი

მონაცემთა შენახვა შეიძლება იყოს ნაგულისხმევად აქტიური

ინსტრუქციები:

  1. დააჭირეთ "პარამეტრების" ხატულას.
  2. გადადით "კავშირის" განყოფილებაში (შეიძლება ეწოდოს "კავშირები").
  3. შემდეგ გადადით განყოფილებაში "მონაცემთა გამოყენება".
  4. დააწკაპუნეთ „ტრაფიკის დაზოგვაზე“ ფუნქციის გამორთვისთვის.

საერთო ჯამში, ეს არის სასარგებლო ფუნქცია, რომელიც დაზოგავს ფულს და ახანგრძლივებს ბატარეის ხანგრძლივობას. მაგრამ თუ მომხმარებელი იმყოფება Wi-Fi ზონაში, არ არის საჭირო ამ პარამეტრის მუშაობა.

მაგალითად, გსურთ აჩვენოთ ტექსტი:

ჩვენ მას "ნატაშას" ვეძახით

რომელიც შეიცავს ბრჭყალებს სახელწოდებით „ნატაშა“. თუ ცდილობთ ამ ხაზის ჩვენებას ინსტრუქციის გამოყენებით

Puts("ჩვენ მას "ნატაშას" ვეძახით");

თქვენ მიიღებთ შეცდომის შეტყობინებას შემდგენელისგან. დაიმახსოვრეთ, puts()-ზე გადაცემული პარამეტრი უნდა დაიწყოს და დასრულდეს ბრჭყალებით, რათა C შემდგენელმა იცოდეს სად იწყება და მთავრდება სტრიქონი. ზემოთ მოყვანილ მცდარ მაგალითში, შემდგენელი ინტერპრეტაციას უკეთებს პარამეტრს, როგორც "ჩვენ ვეძახით მას" დამატებითი სიმბოლოებით "ნატაშა"" განთავსებული ორმაგი ბრჭყალების წყვილის გარეთ, მაგრამ წყვილის ფრჩხილებში, რომელიც შეიცავს პარამეტრს puts() ფუნქციის გამოძახებისთვის. შემდგენლისთვის ასეთი ხაზი შეიცავს ძალიან ბევრ ინფორმაციას.

მოდით ახლა მივცეთ ამ ინსტრუქციის სწორი აღნიშვნა:

Puts ("ჩვენ მას \"ნატაშა\"" ვეძახით);

ნახ.3. ციტატების სიმბოლოების ჩვენება

სურათი 3 გვიჩვენებს, თუ როგორ განმარტავს შემდგენელი ამ ხაზს.

ციტატებისა და უკუღმა ხაზების გარდა, შეგიძლიათ გამოიყენოთ გაქცევის კოდები სხვადასხვა გრაფიკული სიმბოლოების საჩვენებლად. IBM PC და თავსებადი კომპიუტერები შეიძლება აჩვენონ სიმბოლოების ნაკრები, რომელიც ცნობილია როგორც გაფართოებული ASCII სიმბოლოების ნაკრები. მასში შედის ყველა ასო, რიცხვი და პუნქტუაციის ნიშნები, რომლებიც შეიძლება შეიყვანოთ კლავიატურაზე, ასევე რუსული ანბანის ზოგიერთ გრაფიკულ სიმბოლოს და ასოს. ნაკრებში თითოეულ სიმბოლოს აქვს საკუთარი ნომერი, მაგალითად, ნომერი 3 შეესაბამება "გულის" სიმბოლოს (ბარათის ტერმინოლოგიაში "გულები"). ეკრანზე სიმბოლოს გამოსაჩენად, თქვენ უნდა მოათავსოთ შესაბამისი ნომერი (სამი ციფრის სახით) უკანა ხაზის სიმბოლოს შემდეგ:

Putchar ("\003");

ამ ინსტრუქციის შედეგად ეკრანზე გამოჩნდება "გულის" სიმბოლო. ყველა ბარათის სიმბოლოების საჩვენებლად გამოიყენეთ შემდეგი პროგრამა:

Main())(puts("Hearts \003\n");puts("Diamonds \004\n");puts("Clubs \005\n");puts("Spades \006\n");)

puts() ფუნქცია აჩვენებს ყველა ბარათის სახელს და მათ შესაბამის გრაფიკულ სიმბოლოებს (ნახ. 4). ცხრილი 1 გვიჩვენებს რამდენიმე სიმბოლოს, რომელთა წარმოდგენა შესაძლებელია მხოლოდ მათი კოდების გამოყენებით.

ნახ.4. გრაფიკული სიმბოლოების ჩვენება მათი კოდებით

გრაფიკული სიმბოლოების საჩვენებლად, ასევე შეგიძლიათ გამოიყენოთ putchar() ფუნქცია სიმბოლოების ცვლადების ორმაგობის გამო. თუ თქვენ განსაზღვრავთ int ტიპის ცვლადს, აშკარად შეგიძლიათ მიანიჭოთ მას რიცხვითი მნიშვნელობა:

Int count;count=5;

თუ თქვენ იყენებთ ამ ცვლადს, როგორც პარამეტრს, რომელიც გადაეცემა putchar() ფუნქციას

პუჩარი (თვლა);

ეკრანზე გამოჩნდება ცვლადის მნიშვნელობასთან დაკავშირებული სიმბოლო.

ცხრილი 1. გამოყენებული სიმბოლოების ზოგიერთი კოდი.

ASCII ნაკრების ერთ-ერთი პერსონაჟი არ ჩანს ეკრანზე, მაგრამ როცა მის ჩვენებას ცდილობ, ზარი რეკავს! გაქცევის თანმიმდევრობის \007 გამოყენება იწვევს თქვენი კომპიუტერის ჩაშენებული დინამიკის სიგნალს. შემდეგი პროგრამა ორჯერ გამოსცემს სიგნალს, რათა ყურადღება მიიპყროს ეკრანზე გამოსახულ შეტყობინებაზე:

#define BELL "\007" /* BELL უფრო ადვილი დასამახსოვრებელია, ვიდრე \007 */main())(putchar(BELL); /*Beep*/putchar(BELL); /*Beep*/puts("ყურადღება მყიდველებს! \n");puts("სპორტული საქონლის განყოფილებაში სეზონური გაყიდვაა\n");)

#define დირექტივა განსაზღვრავს მუდმივ BELL-ს მნიშვნელობით \007. და მიუხედავად იმისა, რომ მუდმივის დასადგენად კლავიატურიდან ოთხი სიმბოლოს შეყვანა მოგიწიათ, შემდგენელი მას აღიქვამს, როგორც ჩვეულებრივი სიმბოლოების მუდმივობას. დინამიკის სიგნალი ისმის, როდესაც თქვენ ცდილობთ აჩვენოთ BELL მუდმივი putchar() ფუნქციის გამოყენებით.

პოლიედრული ფუნქცია printf()

puts() და putchar() ფუნქციები საკმაოდ ხშირად გამოიყენება, მაგრამ სამწუხაროდ მათი შესაძლებლობები გარკვეულწილად შეზღუდულია. არცერთს არ შეუძლია ციფრული გამომავალის მიწოდება და ორივეს აქვს მხოლოდ ერთი არგუმენტი(პარამეტრი). ეს ნიშნავს, რომ ორივე ფუნქციას შეუძლია მხოლოდ ერთი ობიექტის ჩვენება.

C და C++ ენებს აქვთ უფრო მრავალმხრივი ფუნქცია, რომელსაც ეწოდება printf(). ის საშუალებას გაძლევთ აჩვენოთ ყველა ტიპის მონაცემები და იმუშაოთ რამდენიმე არგუმენტის ჩამონათვალთან. გარდა ამისა, როდესაც გამოიძახებთ printf() ფუნქციას, შეგიძლიათ მიუთითოთ, თუ როგორ ხდება მონაცემების ფორმატირება.

უმარტივეს შემთხვევაში, printf() ფუნქცია შეიძლება გამოყენებულ იქნას puts() ფუნქციის ნაცვლად სტრიქონის დასაბეჭდად:

#define MESSAGE "Hello main())(printf(MESSAGE);printf("კეთილი იყოს თქვენი მობრძანება ჩემს სამყაროში და ახლა... ნახვამდის!")

ისევე როგორც puts(), printf() დაბეჭდავს ციტირებული სტრიქონებს და სიმებიანი მუდმივების და ცვლადების მნიშვნელობებს.

ნომრების გამოტანა

იმისათვის, რომ აჩვენოთ რიცხვითი მონაცემები და შევძლოთ ყველა ტიპის მონაცემების ფორმატირება, printf() ფუნქციაზე გადაცემული პარამეტრების სია ორ ნაწილად იყოფა (ნახ. 5).


ნახ.5. printf() ფუნქციის პარამეტრების სიის ორი ნაწილი

პირველი პარამეტრი ეწოდება საკონტროლო ხაზიან ფორმატის სტრიქონი*. ეს პარამეტრი ჩასმულია ბრჭყალებში და ეუბნება შემდგენელს, სად უნდა გამოჩნდეს სტრიქონში მონაცემები. ფორმატის სტრიქონი შეიძლება შეიცავდეს ნებისმიერ ტექსტს მოწოდებულ ნიშნებთან ერთად ფორმატის ინდიკატორები** და განსაზღვრეთ მონაცემთა ტიპი და მისი მდებარეობა.

თითოეული ფორმატის მაჩვენებელი იწყება პროცენტის სიმბოლოთი (%), რასაც მოჰყვება ასო, რომელიც მიუთითებს მონაცემთა ტიპზე:

ასე რომ, printf() განცხადების პირველი ნაწილი ასე იწერება:

Printf ("%d")

პროცენტის ნიშანი ეუბნება შემდგენელს, რომ მას მოჰყვება ფორმატის ინდიკატორი (პროცენტის ნიშნის საჩვენებლად, ორჯერ ჩაწერეთ: printf("%%");).

ასო d ეუბნება შემდგენელს აჩვენოს ათწილადი რიცხვების სისტემაში დაწერილი მთელი რიცხვი (ნახ. 6).


სურ.6. ფორმატის ინდიკატორის კომპონენტები

პარამეტრების სიის მეორე ნაწილი არის მონაცემთა სიაშეიცავს ლიტერალებს, მუდმივ სახელებს ან ცვლადის სახელებს, რომელთა მნიშვნელობის ჩვენება გსურთ. მონაცემთა სია გამოყოფილია ფორმატის სტრიქონიდან მძიმით. მონაცემთა სიის ყველა ელემენტი ასევე გამოყოფილია მძიმეებით. როდესაც შემდგენელი ქმნის ობიექტის კოდებს, ის ცვლის ფორმატის მაჩვენებლებს მონაცემთა სიიდან მნიშვნელობებით.

printf() ფუნქციის გამოყენების მარტივი მაგალითი მოცემულია ქვემოთ:

Printf("%d", 12);

ამ ინსტრუქციის შესრულებისას, მნიშვნელობა 12 შეიცვლება ფორმატის ინდიკატორის ნაცვლად (ნახ. 7). ჩვენს მაგალითში, ჩვენ რეალურად ჩავაბარეთ


ნახ.7. მნიშვნელობა ჩანაცვლებულია ფორმატის ინდიკატორის ნაცვლად

ბიბლიოთეკის ფუნქცია printf() აქვს ორი პარამეტრი: ფორმატის სტრიქონი და რიცხვითი literal12.

ფორმატის სტრიქონი ასევე შეიძლება შეიცავდეს უბრალო ტექსტს ფორმატის ინდიკატორებით. მაგალითად, გადახედეთ ინსტრუქციას:

Printf("მე ვარ %d წლის", 12);


სურ.8. ფორმატის ინდიკატორის გამოყენება სტრიქონის შიგნით

ფორმატის სტრიქონი ამ მაგალითში არის ჩანაწერი

"მე %d წლის ვარ"

ფორმატის მაჩვენებელი, %d, მიუთითებს, რომ გვინდა რიცხვის ჩასმა სიტყვებს „ვბერდები“ და სიტყვა „წლის“ შორის (ნახ. 8). როდესაც შემდგენელი ჩაანაცვლებს რიცხვს 12 ფორმატის ინდიკატორის ნაცვლად, ჩვენ ვნახავთ შემდეგ ფრაზას:

12 წლის გავხდი

ეს მაგალითი ფუნქციას გადასცემს როგორც სტრიქონს, ასევე ციფრულ მნიშვნელობას.

ამ შემთხვევაში, იგივე შედეგი შეიძლება მივიღოთ მთელი ფრაზის პარამეტრად გადაცემით ერთ-ერთ ფუნქციაზე:

Printf ("მე ვარ 12 წლის"); აყენებს ("მე ვარ 12 წლის");

მაგრამ ტექსტის ციფრულ მუდმივებთან ან ცვლადებთან დასაკავშირებლად, თქვენ უნდა გამოიყენოთ printf() ფუნქცია და ფორმატის ინდიკატორები, როგორც, მაგალითად, პროგრამაში:

Main() ( int ასაკი; ასაკი = 12; printf ("მე ვარ %d წლის", ასაკი); )

ეს პროგრამა აჩვენებს სტრიქონს და მთელი რიცხვის ცვლადის მნიშვნელობას ეკრანზე ერთი ინსტრუქციის გამოყენებით (სურათი 9).


ნახ.9. ცვლადის მნიშვნელობა ჩანაცვლებულია ფორმატის მაჩვენებლის ნაცვლად

printf() ფუნქციას შეიძლება გადაეცეს ნებისმიერი რაოდენობის პარამეტრი მრავალი არგუმენტის საჩვენებლად. ამ შემთხვევაში, აუცილებელია თითოეული არგუმენტისთვის ფორმატის ინდიკატორის მიწოდება. მონაცემთა სიაში მნიშვნელობები უნდა განთავსდეს იმავე თანმიმდევრობით, როგორც შესაბამისი ფორმატის სპეციფიკატორები: მონაცემთა სიაში პირველი ელემენტი ჩანაცვლებულია პირველი ფორმატის სპეციფიკატორით, მეორე - მეორე და ა.შ. გადახედე პროგრამას:

Main())(int lucky_1, lucky_2; lucky_1 = 12; lucky_2 = 21;printf("ჩემი იღბლიანი ნომრებია \ %d და %d", lucky_1, lucky_2);)

აქ ჩვენ განვსაზღვრეთ ორი მთელი ცვლადი lucky_1 და lucky_2 და მივენიჭეთ მათ საწყისი მნიშვნელობები. printf() ფუნქციის მონაცემთა სია შეიცავს ორ ცვლადის სახელს (არგუმენტებს), რომელთა ჩვენებაც გვინდა, ამიტომ ფორმატის სტრიქონს ასევე უნდა ჰქონდეს ორი ფორმატის ინდიკატორი. ვინაიდან ორივე ცვლადი არის int ტიპის, ორივე ფორმატის ინდიკატორი იგივეა - %d, როგორც ნაჩვენებია სურათზე 10.


სურ. 10. ორი ფორმატის ინდიკატორის გამოყენება

შემდგენელი ჩაანაცვლებს მნიშვნელობებს ფორმატის მაჩვენებლების ადგილას და ფრაზა ასე გამოიყურება:

ჩემი იღბლიანი ნომრებია 12 და 21

lucky_1-ის მნიშვნელობა, პირველი ელემენტი მონაცემთა სიაში, დაიკავებს პირველი ფორმატის მაჩვენებლის ადგილს, ხოლო მონაცემთა სიის მეორე ელემენტი (მნიშვნელობა lucky_2) დაიკავებს მეორე მაჩვენებელს. თუ მონაცემთა სიაში ელემენტების გაცვლა ხდება:

Printf("ჩემი იღბლიანი ნომრებია \ %d და %d", lucky_2, lucky_1);

შემდეგ მნიშვნელობები გამოჩნდება შემდეგი თანმიმდევრობით:

ჩემი იღბლიანი ნომრებია 21 და 12

მონაცემთა ტიპი უნდა შეესაბამებოდეს ფორმატის მაჩვენებლის ტიპს. მაგალითად, შემდეგი პროგრამა აჩვენებს float ცვლადის და int ცვლადის მნიშვნელობებს ერთი printf() ფუნქციის გამოყენებით:

Main())(int count;float თანხა;count =5;amount = 45.48;printf("ღირებულება არის %f %d ცალი", თანხა, რაოდენობა);)

პირველი მნიშვნელობა მონაცემთა სიიდან - მცურავი წერტილის ნომერი - ჩანაცვლებულია პირველი %f ფორმატის მაჩვენებლის ნაცვლად. მეორე მნიშვნელობა - მთელი რიცხვი - ჩანაცვლებულია მეორე ფორმატის მაჩვენებელი %d-ის ნაცვლად. პროგრამა იკრიბება და მუშაობს შეცდომების გარეშე, რადგან ცვლადების ტიპები და ფორმატის მაჩვენებლები იგივეა. როგორც ნაჩვენებია სურათზე 11, float მნიშვნელობა ცვლის %f მაჩვენებელს, ხოლო int მნიშვნელობა ცვლის %d მაჩვენებელს. შედეგად გვაქვს:

ღირებულება 45.580000 5 ცალი


სურ. 11. მონაცემთა ტიპი უნდა ემთხვეოდეს ფორმატის სპეციფიკატორს

ნულების რაოდენობა, რომლებიც გამოჩნდება მცურავი წერტილის რიცხვში, დამოკიდებულია კონკრეტულ შემდგენელზე (მალე გაიგებთ, თუ რატომ ჩნდებიან ისინი). თუ თქვენ შეცვლით ელემენტებს მონაცემთა სიაში და დაწერთ ინსტრუქციას შემდეგნაირად:

Printf("ღირებულება არის \%f %d ცალისთვის", რაოდენობა, თანხა);

შემდგენელმა შეიძლება არ შეატყობინოს შეცდომა, მაგრამ შედეგი იქნება უაზრო ჩანაწერი:

ღირებულება არის -2.002149E37 16454 ცალი

ეს შედეგი გამოწვეული იყო რიცხვითი მონაცემების ტიპებსა და ფორმატის ინდიკატორებს შორის შეუსაბამობამ. printf() ფუნქციის გამოძახებისას შეგიძლიათ გამოიყენოთ სხვადასხვა ტიპის მრავალი არგუმენტი, მაგრამ მხოლოდ იმ შემთხვევაში, თუ მონაცემთა ტიპები და ფორმატის ინდიკატორები მკაცრად ემთხვევა.

ხაზოვანი თარგმანი

printf() ფუნქცია ავტომატურად არ გადაიყვანს კურსორს ახალ ხაზზე მონაცემების ჩვენების შემდეგ. მას შემდეგ, რაც მონაცემები გამოჩნდება ეკრანზე, კურსორი რჩება იმავე ხაზზე, ბოლო სიმბოლოს შემდეგ.

თუ გსურთ კურსორის გადატანა შემდეგ სტრიქონზე, უნდა დაამატოთ "ახალი ხაზის" საკონტროლო კოდი \n ფორმატის სტრიქონში:

Printf("ღირებულება არის %f %d ცალი\n", თანხა, რაოდენობა);

\n საკონტროლო კოდი მოთავსებულია იქ, სადაც ადამიანს სურს ახალი ხაზის დაწყება (აუცილებლად არ არის ფორმატის ხაზის ბოლოს), მაგალითად, განცხადების შესრულების შედეგად.

Printf("ღირებულება არის %f\n %d ცალი\n", თანხა, რაოდენობა);

ეკრანზე გამოჩნდება ორი ხაზი:

ღირებულება არის 45.580000 5 ცალი და ღირებულება 45.580000 5 ცალი

თქვენ შეგიძლიათ გამოიყენოთ ნებისმიერი სხვა გაქცევის თანმიმდევრობა სივრცეების გასაკონტროლებლად, სიგნალის წარმოებისთვის ან სპეციალური სიმბოლოების საჩვენებლად.