Prezentacja 1 - INF-WLF

Download Report

Transcript Prezentacja 1 - INF-WLF

Treści multimedialne - kodowanie,
przetwarzanie, prezentacja
Odtwarzanie treści multimedialnych
Andrzej Majkowski
informatyka +
1
Teksty w komputerze
Iwona i Ireneusz Bujnowscy
2
Tabela kodów ASCII
ASCII (American Standard Code for Information
Interchange)
•Tekst przechowuję się w pamięci komputera w postaci liczb.
•Po prostu małym i wielkim literom alfabetu, cyfrom oraz wszystkim
innym znakom przyporządkowuje się kolejne liczby z pewnego
zakresu.
•Zwykle jeden znak zajmuje w pamięci komputera jeden bajt (osiem
bitów), najczęściej używanym bywa kodowanie ASCII
Przetwarzanie tekstów w języku C++
• Zmienne znakowe
#include <iostream>
#include <string>
using namespace std;
int main()
{
char z1,zz; //deklaracja zmiennej znak z1 ; zz
z1=65; //przypisanie na stałe zmiennej z1 –dużej
litery A
(kod ASCII A=65)
zz=‘B’; //przypisanie na stałe
cout<<z1<<zz; //wypisanie na
return( 0 );
}
zmiennej zz –dużej litery B
standardowe wyjście AB
4
Przetwarzanie tekstów w języku C++
Zmienne typu string (łańcuch znaków)
#include <iostream>
#include <string>
using namespace std;
int main()
{
string s1,s2; //deklaracja dwóch
getline(cin,s1); // wczytuje przy
stringów s1,s2
pomocy strumienia cin
do zmiennej s1 z wszystkimi białymi znakami.
cin>>s2;
// czytanie tekstu s2 tylko pierwszego białego
znaku np. spacji
cout<<s2; // wyprowadzanie napisu s2 ;
cout <<s1.length() //wyprowadzanie długości
return( 0 );
}
stringu s1
======================================
Strig ->tablica znaków.
Dla wprowadzonej zmiennej s1=‘’wiem ale nie powiem’’
s1[2]=e; s1[5]=a; (indeksy od zera)
5
Przetwarzanie tekstu znak po znaku
#include <iostream>
using namespace std;
string s;
int main()
{
cin<<s;
for (int i=0;i<s.size();i++)
{
// zrób coś ze znakiem s[i] i wypisz go
cout << s[i];
}
cin.ignore(2);
}
6
Operacje łączenia, usuwania i zamiany znaków
Mając dane napisy:
string s1=”algorytmy”, s2=” i ”,
s3=”struktury danych”, s;
• możemy je połączyć poleceniem:
s=s1+s2+s3;
• możemy usunąć k znaków z napisu s zaczynając od znaku o
indeksie n.
s.erase(k,n);
• każdy znak możemy nadpisać (zamienić)
s[i]=‘a’;
========================================
Więcej informacji np. na stronie
http://www.cplusplus.com
7