Documentos de Académico
Documentos de Profesional
Documentos de Cultura
oe
e [e
«»
<
<=
>
>
&
A
&&
II
*- 1=
&=
«=
»=
esquerda para a direita esquerda para a direita esquerda para a direita esquerda
para a direita esquerda para a direita direita para a esquerda direita para a
esquerda
Apêndice B
O123456789
O
2
3
4
5
6
7
8
9
1O
11
12
flui so st et eo en ac be bs ht
h x x t q k l
ni vt ff cr so si di dc dc dc
e l 2 3
dc na sy et ca e su es fs gs
4 k n b n m b c
rs us sp ‘ # $ % & ‘
( ) * + , - . / O 1
2 3 4 5 6 7 8 9 : ;
< = > ? @ A B C D E
F G H 1 J K L M N O
P Q R S T U V W X Y
Z [ \ 3 ‘ ‘ a b e
d e f g h i j k 1 m
n o p q r s t u v w
x y z { } de
i
Apêndice C
Sistemas de numeração
Objetivos
• Compreender os conceitos básicos dos sistemas de numeração, tais como
base, valor posiciona! e valor do símbolo.
• Compreender como trabalhar com números representados nos sistemas de
numeração binário, octa! e hexadecimal.
• Ser capaz de abreviar números binários como números octais ou
hexadecimais.
• Ser capaz de converter números octais e hexadecimais em números binários.
• Ser capaz de fazer conversões de números decimais para seus equivalentes
binários, octais e hexadecimais e vice-versa.
• Compreender a aritmética binária e como números binários negativos são
representados usando a notação de complemento de dois.
Aqui estão os únicos números ratificados.
Wil!iam Shakespeare
A natureza tem uma espécie de sistema coordenado aritmético-geométrico,
pois ela possui todos os tipos de modelos. O que percebemos da natureza está
em modelos, e todos os modelos da natureza são belos.
Ocorre-me que o sistema daquela natureza deve ser uma beleza real, pois
em química descobrimos que as associações são sempre em belos
números inteiros - não há frações.
Richard Buckminster Fu!!er
Dígito decimal 9 3 7
Nome da posição Centenas Dezenas Unidades
Valor posicional 100 10 1
Valor posicional como
uma potência da base 102 10’ 10°
Fig. C.3 Valores posicionais no sistema de numeração decimal.
Para números decimais maiores, as próximas posições à esquerda seriam a
posição dos milhares ti u eievauo a terceira potência), aposição das dezenas de
milhar (10 elevado à quarta potência), a posição das centenas de milhar (10
elevado à quinta potência), a posição dos milhões (10 elevado à sexta potência),
a posição das dezenas de milhões (10 elevado à sétima potência) e assim por
diante.
No número binário 101, dizemos que o 1 da extremidade da direita está escrito
na posição da unidade, o O está escrito na posição do dois e o 1 da extremidade
esquerda está escrito na posição do quatro. Veja que cada uma dessas posições
é uma potência da base (base 2) e que essas potências começam em O e
aumentam de 1 em 1 à medida que nos movemos para a esquerda no número
(Fig. C.4).
Para números binários mais longos, as próximas posições à esquerda seriam a
posição do oito (2 elevado à
terceira potência), a posição do dezesseis (2 elevado à quarta potência), a
posição do trinta e dois (2 elevado à quinta potência), aposição do sessenta e
quatro (2 elevado à sexta potência) e assim por diante.
No número octal 425, dizemos que o 5 está escrito na posição das unidades, 02
está escrito na posição do oito
e o 4 está escrito na posição do sessenta e quatro. Veja que cada uma dessas
posições é uma potência da base (base
8) e que essas potências começam em O e aumentam de 1 em 1 à medida que
nos movemos para a esquerda no
número (Fig. C.5).
Fig. C.7 Equivalentes decimais, binários, octais e hexadecimais.
100011010001 4321 8D1
100 011 010 001
4321
1101 0001
801
C.3 Convertendo números octais e hexadecimais em números
binários
653
4 5 como seu binário de 4 o
111110101 1010101.
Fig. C.8 Convertendo um número binário em decimal.
3980,
Fig. CIO.
Fig. C.10 Convertendo um número hexadecimal em decimal.
1
Convertendo um ero binário em
núm decimal
32 16 8 2 1
4
1 1
O 1 O 1
1*32=32 1*1616 1 0*2= 1*11
*44 0
Soma: =32+16+0+ 4+ 0+153
1
Convertendo um número octal em decimal
512 64 8 1
7 6 1 4
7*5123584 6*64=384 1*8=8 4*14
3980
Soma: = 3584 + 384 + 8 + 4 =
Fig. C.9 Convertendo um número octal em
decimal.
Convertendo um número hexadecimal em
decimal
A D A*4096=40960 D*256=3328 3*16=48 B
B*1=11
= 44347
Soma: = 40960 + 3328 + 48 + 11
1044 C++ COMO PROGRAMAR
C.5 Convertendo do sistema decimal para o sistema binário, octal ou
hexadecimal
______
57
512 64 8 1
C 1045
256
256.
7
C.6 Números binários negativos: notação em complemento de dois
notação em complemento de dois.
int valor = 13;
do valor é
(-), operador NOT sobre bits:
=
Resumo
C SISTEMAS DE NUMERAÇÃO 1047
().
Terminologia
Exercícios de autorevisão
C.1 ____________ ,__________ ,___________
C.3
C.6
C.9
C.I 1
C.13
C.14
C.16
C.17
Respostas aos exercícios de autorevisão
C.1
C.4
C.6
C.9
C.1O
C.11
C.15 Decimal 7+1*8+3*64=7+8+192=207.
C.16 4+13*16+15*256+14*4096=61396.
C.l7
256 128 64 32 16 8 4 2
128 64 32 16 8 4 2
(1*128)+(0*64) +(1*32) + (1*16)+ (0*8) + (0*4)+(0*2)+(1*1)
512 64 8 1
64 8 1
(2*64)+ (6*8) +(1*1)
261
16 1
(11*16)+(1*1)
(B*16) + (1*1)
B1
5122561286432168421
256 128 64 32 16 8 4 2 1
(1*256) + (1*128) + (0*64) + (1*32) + (0*16) + (0*8) + (0*4) + (0*2) + (1*1)
APÊNDICE SISTEMAS DE NUMERAÇÃO
+
Exercícios
. . . .
. . . . .
. .
Apêndice D
Recursos sobre C++ na Internet e na Web
.
Di Recursos
http://www.progsource.com/index.
c++.
http: //www. intranet. ca/-sshah/booklist. html#C++
Help-site.com
http: //www. glenmccl . com/tutor. htm
CIC++.
. .
CIC++.
D.2 Tutoriais
http: //info desy . de/gna/html/cc/index
Introduction lo Object-Orientred Programming Using C++
http: //uu-gna.mit. edu: 8001/uu-gna/text/cc/Tutorial/tutorial . html
capítulos, cada um
Este tutorial foi projetado para programadores de Pascal que querem aprender
C++.
Este site tem uma lista de C++. Também contém informações C++.
Este site inclui um tutorial passo a passo que inclui exemplos de código.
http://www.progranunersheaven.com/zone3/cat34/index.
Este site contém uma lista de assuntos de tutoriais. Os níveis dos tutoriais
variam
especialistas.
D.3 FAQs
http: //reality. sgi . com/austern/std-c++/faq .
co . uk/cpplibsl
. .
lista de respostas
C++.
1052 C++ COMO PROGRAMAR
http: //pneuma phys ualberta. ca/-.burris/cpp
http: //www.math.uio.no/nett/faq/C-faq/faq.html
Este site consiste em uma série de links para FAQs e tutoriais reunidos do
Esta lista de FAQ contém tópicos tais como ponteiros, alocação de memória e
strings.
DA Visual Ci+
http://ehesworth.com/pv/languages/c/visualcpptutorial.
D.5 comp.lang.c++
http: //weblab. research att. com/phoaks/comp/lang/c++/ resourcesO People Helping
OneAnotherKnow Stuff,
.
APÊNDICE D RECURSOS SOBRE C++ NA INTERNET E NA WEB 1053
umu . se/-maxell/C++/
comi bs/homepage .
é de Bjarne Stroutrup, C++, C++.
. .
C++
austinlinks .
.
The C++ Libraries FAQ compilada por programadores profissionais para programadores de
. com/comp/lang/cplusplus/
htinl#oocylusylusgeneralnewsgroups
.
The Programmer’s Source C++. A lista de compiladores está organizada por plataforma.
Cygnus na Web.
Você pode fazer download do compilador LCC-Win32 para Windows 95/NT, sem custo,
Metrowerks CodeWarrior
. .
Miracle C compiler.
.
Compilers.net
http: //sunset olemiss . edu/%7Ebobcook/eC/
. .
Intel C++.
. .
0.6 Compiladores
APÊNDICE D RECURSOS SOBRE INTERNET E NA WEB 1055
0.7 Ferramentas de desenvolvimento
http: //www. quintessoft. comi
D.8 Biblioteca padrão de gabaritos
Tutoriais
http: //www. cs brown . edu/people/jak/prograinming/stl-tutorial/
tutorial html
stream
.
Este site de é uma folha de FAQ para a STL mantida por Marian Corcoran, membro
do comitê ANSI e
1056 C++ COMO PROGRAMAR
Artigos, livros e entrevistas
http://www.byte.com/art/951O/sec12/art3. htzn
Bvte Magazine
http: //www. sgi com/Technology/STL/drdobbs-interview.html
Bibliografia
The C Users Journal,
The C Users Journal,
(Co95) Coplien, J. O., and D. C. Pattern Languages of Program Design, Reading, MA:
AddisonWesley
1058 BIBLIOGRAFIA
International Standard: Programming Languages-C++.
Operating Systems,
Java How to Program,
The Java Multimedia Cber Classroom,
CHow to Program
PC Magazine, 15,
TheAnnotated C++ Refrrence Manual,
Object-Oriented SystemsAnalysis,
A Beginner’s Guide to Object-Oriented Programming,
Practi cal Data Structures in C++, NY:
Design Patterns: Elements of Reusable Object-Oriented Software,
The Concurrent C Programming Language,
The C Users Journal,
(G195) The STL <Primer>,
Inside Microsofi Visual C++,
The C++ AnswerBook,
Industrial Strength C++: Rules and Recommendations,
!EEE Software Magazine,
Portability and the C Language,
The CProgramming Language
The Smalltalk Report,
Proceedings ofthe USENIX C++ Conference,
Journal of Object-Oriented Prograinming,
C++ Report, 5,
Ruminations on C++,
Data Structures and Program Design in C,
ÍEEE Transactions on Software Engineering,
C++ Primer
Object-Oriented Software Deveiopment: A Practical Guide,
The Smalltalk Report,
Principies of Object-Oriented Analysis and Design,
BIBLIOGRAFIA 1059
Designing Object-Oriented C++ Applications Using the Booch Method,
Object Magazine, 5,
Object Magazine,
Object-OrientedSoftware Construction,
Advances in Object-Oriented Software Engineering,
Eiffel: The Language,
Effective C++: 50 Specific Ways to Improve Your Programs and Designs,
More Effective C++. 35 New Ways to Improve Your Programs and Designs,
C/C+÷ Users Journal,
C++ Strategies and Tactics,
pp. 1991-2019.
AT&T Beil Laboratories Technicaliournal,
1060 BIBLIOGRAFIA
AT&T Laboratories Technical Journal,
Using the STL: The C++ Standard Template Librarv,
Communications of theACM,
Rumbaugh, Blaha; OhjectOriented Modeling and Design,
The C Users Journal,
STL Programmingfrom the Ground Up,
Algorithms in C++,
Class Construction in C and C++,
The C Users Journal,
Object Lifecycles: Modeling the World in States,
Reusabilitv & Software Construction in C & C++, NY:
IEEE Software Magazine,
II butler.hpl.hp.com/stl, July
(St84) Stroustrup, B., “The UNIX System: Data Abstraction in C,”AT&TBeII Laboratories
Indice
Símbolos
=
$
& *
&
&
&&
&=
O
(1
*
*
* *
+
++
++
+=
*
/
/1
<=
=
==
>
>
>
>=
»
\
\“
‘=
=
Numéricos
A
handie
handie
string
116, 124-125,760,917-918,918-
algoritmo
928-929
102-104, 120-121
740
1064 ÍNDICE
516
<new>
streams
string
strings
strings
ASCJI (American Standard Code for
information Interchange)
(string
atexit
tring
757
áudio 639640
544-545
B
(“1”)
(\)
stream
stream
bibliotecas 6
565-566, 583-584
plataforma 918-919
Booch, Grady 84
349-350
referência 334-335
14
c
ÍNDICE 1065
1
stream
1066 ÍNDICE
(‘ ‘)
string
(_ )
defriend
defriend
defriend
(...)
. .)
577-579
190-191, 194-195
* 355-356
**
)
(})
o)
({)
))
(stream
.
954-955
595-599,
556-55
595-
a
ÍNDICE 1067
proxy
síream
([])
strings
1068 INDICE
strings
string
.uh.tring
string
strings
strings
stream
stream
*
* const
constreference
constreverseiterator
DATE
ÍNDICE 1069
construtor default 4 17,420, 462465, 530533, 549550, 686688, 920921
construtor default de objeto membro
462465
construtor em uma união 880881
construtor explicit 10201021
construtor ofstream 731732
construtores de argumento único e conversões implícitas 10181019 construtores de cópia na passagem de parâmetros
em chamadas por valor
545
construtores de objetos globais 421422 construtores e destruidores chamados
automaticamente 420421
construtores não podem ser virtuais
62 1622
construtores sobrecarregados 416417
consumo de memória 629630
conta de poupança 134135
contador 110111, 115, 121122, 179- 180, 2092 10
contador de instruções 800801
contador de laço 113114, 126127
contagem baseada em zero 130131
Contando conceitos alfabéticos 138
contando de um em um para cima 113
114
contêiner 200201, 760, 906907, 917 920, 955
contêiner associativo 9 19920, 922923, 926927. 942943, 945946
contêiner associativo multimap 946
947
contêiner associativo set 946
contêiner de primeira classe 92 1924, 926927, 933934, 937
contêiner seqüencial 9 19920, 926927, 929930, 936, 939940
contêiner seqüencial deque 940941
contêiner subjacente 951952
conteúdo dinâmico 5758
Controlando a impressão de ieros após a vírgula e casa decimal com valores float 658659
Controlando a precisão de valores em ponto flutuante 653654
controle centralizado 6364
controle de programa 100101
converge para o caso base 219220
conversão de classe derivada para classe base 705
conversão de objeto da classe derivada para objeto da classe base 582583 conversão de ponteiros 573
conversão entre um tipo primitivo e uma classe 544545
conversão explícita 118119
conversão implícita 118119, 543544, 10171018, 10201023, 10261027
conversão implícita entre tipos primitivos definida pelo compilador
544545
conversão implícita imprópria 10 18
1019
conversão perigosa 573
conversões entre tipos primitivos 535
536
conversões entre tipos primitivos por coerção 535536
conversões implícitas 10181019 conversões implícitas através de construtores de conversão 10201021 conversões implícitas definidas
pelo usuário 543544
conversões padrão 10051006 conversor de infixa para pósfixa 805
806
converte entre tipos 534535 converte entre tipos definidos pelo usuário e tipos primitivos 5355 36 converte letras minúsculas 200201
convertendo de um tipo de dados mais alto para um tipo de dados inferior
199200
convertendo entre classes e tipos primitivos 413414, 446447 Convertendo strings para strings no estilo de C e arrays de caracteres
904905
Convertendo um string para maiúsculas
329330
cópia do argumento 329
cópia membro a membro 430431, 532 533
cópia membro a membro default 430
431,532533,543544,922923
cópia nãoincrementada de um objeto
55 1552
copia um string 343344
copia um string usando notação de array 343344
copia um string usando notação de ponteiro 343344
copiando strings 343344
Copiando um string usando notação de array e notação de ponteiro 343344
copy 905906, 928929, 935936
copy_backward 928929, 97 1973
Corcoran, Marian 1000-1001, 1055- 1056
corpo com múltiplos comandos 8081 corpo de um laço 128129, 132133,
186, 188
401
corpo de uma estrutura while 109110
corpo de uma função 6769, 194196
corpo do else 105-106
corpo do while 109110
correção 63
correio eletrônico 63-64
correto no sentido matemático 150-152
cos 192193
coseno 192193
co-seno trigonométrico 192-193
criar novos tipos 480-481
1070 ÍNDICE
<ctrl>z 139140, 647649, 654655,
732733
cursor 6869
495
485
#define P1 3.14159 857
defined 859-860
defined 859-860
definição 127-128
deleção 482-483
877878
[]
952
897
iexicographicai_compare da
remove copy
replace.
replace_if, replace_copy e
Padrão 963
Padrão 977
unique_copy e reversecopy
974-975
siream de
upper_bound e equal_range
Demonstrando new de erro 712
Stack 684-686
932
D
1•I
ÍNDICE 1071
1008
953-954
. *
deque
stream stream
1072 ÍNDICE
3-54
DOS
downcast
dump
E
E
EIS de
EIS de
EIS
EIS
EBCDIC (Extended Binarv Coded
Decimal Interchange Code)
+= 544-545
stream
streams
strings
(EIS)
stream,s
string
stream
string
stream
underflow
ÍNDICE 1073
escopo de protótipo de função 211212
escopo
‘‘
,stream
stream
stream
síream
1075
*
>*
+
& *
1076 ÍNDICE
573-574
isxdigit
1077
456-
415
565-566
ObjectSpace STL Tool Kit
stream
F
FAQs 1051-1053
fases 114-115
derivada 568-569
spool
upcasting
stream
stream 735-736
string 760-761
1079
função operador de coerção 535536 função operador de coerção
sobrecarregada 535536
função operador de extração de stream
predicado binária
predicado unária 939940,
chama a si mesma 214
chama versão da
matemática 198199
square 199200
função static
ftinção
função
chamada
da biblioteca
strings
strings
992
G
806
pilha 774775, 805
efriends
gerando
recursivamente
Gerando
nos
da 621622
gerenciamento
Green Eggs Report
guillemets (« »)
H
handle432-436,
handie
handie
handie
handie
handie
handie
handier
handier
handier
handies
heap
1080
heapsort
hex
EIS stream
(enter)
proxy
string,
string
string
ÍNDICE 1081
dec
657-658,
657-058,
=
stream
stream
zero
&
*
*
Ox
+
International Standards Organiation
(ISO)
Internetworking Protocol (1P)
1082
453
665-
657-658,
735-736
666
825
ISV 621-622
.
923-924
J
Java Como Programar: Terceira Edição
57-58
craps 206-209
K
L
Lobo ratory for Computer Science 63-64
122
120- 122
lados de um
193- 194
string
ÍNDICE
1083
875-876
>
lexicographical compare
Ivalue
list
limerick >
Ivalues rvalues
M
.
strings
strings
stream
srream
stream
1085
54-55
iflt,
944-945
mu/titasking
multithreading 698-699
N
rvalue
(‘
stream
66
o
Object Constraint Language (OCL)
Object Management Group (OMG)
5
stream
1086 ÍNDICE
objeto disparado 703705
objeto do stream de entrada padrão 728
729
objeto exceção 702703
objeto exceção de divisão por iero 702
703
objeto fila 793794
objeto função 943944, 947948, 989 992
objeto função binária 990991
objeto função de comparação 943944,
947948
objeto função de comparação less
943944. 954955
objeto função less< int > 943945 objeto função less< T > 947948,
954955
objeto função pode encapsular dados
992
objeto grande 225226
objeto hospedeiro 460461
objeto interage 396
objeto iterador482483, 918919
objeto local automático 421422
objeto local static 42 1424
objeto que envia 298299
objeto que recebe 298299
objeto sai do escopo 420421
objeto sem nome 88 1882
objeto servidor 298299
objeto Stririg temporário 544545
objeto temporário 535536
objetos 8283
objetos automáticos em um bloco try
706
objetos componentes 437
objetos contêm somente dados 406407
objetos criados dinamicamente 435436
objetos da classe derivada tratados como objetos da classe base 582583
objetos de superclasse duplicados 1026
1027
Observações de engenharia de software
6061
obtém o valor de 7980
obter o valor de um membro de dados 12413
obter ponteiro 735
oct 65 1652
octal 184185, 66 1662
ocultação 462465
ocultação de informações 8384,211 212, 334335, 396397, 404, 413
414.479480
ocultando a implementação 405406 ocultando detalhes de implementação
190191
ocultar a implementação 479480, 484 485
ocultar dados dos clientes
408409
ocultar detalhes de implementação 479
480
ocultar nomes em escopos mais
externos 211212
ocultar uma representação de dados
interna 481482
ofstream728735, 742746, 87 1872
Oito Rainhas 3 16317
Oito Rainhas com recursividade 220
221, 317318
Oito Rainhas: abordagens de “força
bruta” 316317
“olho de boi” 237238
OMG 84
OOAD 84
OOD 8 182
OOP 8284
opção de compilador 6566
opções combinadas por ou 65665 7
opções de menu 746747
operação com stream falhou 665666
operação de enfileirar 481482
operação de retirada da fila 481482
operação de sincronização de um
istream e um o,streo,fl 667668
operações 16 1162, 234235, 298299, 30 1302, 363364
operações com iterador de acesso aleatório 927928
operações com iteradores bidirecionais
927928
operações com iteradores para a frente
927
operações de classes 366367
operações de entradalsaída 101103
operações de iterador 927
operações implementadas como funções
234235
operações permitidas sobre dados 480
481
operador && 148149
operador [] sobrecarregado 531532
operador + 985
operador += 893894
operador + sobrecarregado 55055 1
operador < 985986
operador « 10041005
operador « sobrecarregado 519520, 545, 64 1642
operador 6768, 124125
operadorAND sobre bits (&) 814819, 851
operador sobre bits com atribuição
820821
operador sobrecarregado *
716717
operador sobrecarregado
>715716
operador binário + 7475
operador binário 7275, 148149
operador binário de resolução de escopo
(: :) 228229. 404405, 475476, 594595, 10091010, 1026 operador condicional (?:) 105106 operador condicional
ternário (?: ) 219,
5 185 19
1023 1024
operador de acesso a membro (.) 397 398
operador de adição com atribuição (+=)
124 125
operador de adição com atribuição (+) sobrecarregado 550551
operador de atribuição (=) 7273, 8182, 126127, 430431. 516517, 922923
operador de atribuição (=
sobrecarregado 530531, 533534,
543545. 582583
operador de atribuição e deslocamento à direita com extensão do sinal 820
821
operador de chamada de função O 545
546, 630632, 7157 16
operador de chamada de função O sobrecarregado 545546
operador de coerção 116, 118119, 198 199, 340341, 535536, 10041006,
101710 18
operador de
10151016
operador de complemento () 814815 operador de complemento sobre bits ()
8168 17, 819821
operador de concatenação + sobrecarregado 545
operador de concatenação de string sobrecarregado 544545
operador de concatenação
sobrecarregado 544545
operador de decremento unário () 125 operador de derreferência de ponteiro
(*) 397398, 630632 operador de derreferenciação (*) 322
324
operador de desigualdade sobrecarregado 530531, 534
operador de deslocamento à direita (»)
516, 640641, 814815. 820821, 851
operador de deslocamento à direita sobre bits (»)516
operador de deslocamento à esquerda
(«)5l6, 640641, 814815, 819
821. 850851
operador de deslocamento à esquerda com atribuição 820821
operador de deslocamento à esquerda sobre bits («) 516, 8 19820
operador de deslocamento sobre bits
8 19820
INDICE 1087
síream»
extração de stream
operador de extração de streun?
stream false
síream
( =)
= (=)
531-532,
stream «
stream «
siream
(.)
()
(.)
(
<
(=)
(1=)
o)
(.)
(>)
[] strings
(,)
strealn stream
strea,n
1.
.
>, <. >=. <=
()
void*
operator’
operator ‘ =
operator []
operator++
operator+=
operator<
operator«
operator=
1088 ÍNDICE
ordem na qual as ações devem ser executadas 100101. 110111
Ordem na qual construtores e destruidores de classe base e classe derivadas são chamados 579580
ordem na qual construtores e destruidores são chamados 421423,
434435
ordem na qual destruidores são chamados 42 1422
ordem na qual inicializadores de membros são listados 577579
ordem na qual operadores são aplicados a seus operandos 219
ordem na qual tratadores de exceção são listados 705
ordem último a entrar, primeiro a sair
(LIFO) 683684, 686688
ordenando 482483, 729730, 760, 968, 970
ordenando arrays 282283
ordenando strings 201
ordenando um array com bubble sort
283284
orientação a objetos 8 182, 396
orientado a cliente 405406
orientado a objetos 8384
orientado para ações 8384
os operadores ponteiros & e * 322324
562, 640642, 647648, 650
651, 728729, 73 5736, 740746,
750751
923925
936
otimização 874-875
otimização de compilador 8748 75
otimizações sobre constantes 452453
otimizando o compilador Simple 803
805
outros conjuntos de caracteres 890
overhead 545
overhead de chamada de função 222
223, 545
overhead de chamada por valor 399400
overhead de cópia 398399
overhead de função 85 8859
overhead de função
overhead de uma chamada de função
857858
overhead de uma chamada de função
extra 53453 5
overhead durante a execução 629630
oxímoro 267268
P
pacote (de aplicativos) gráfico 635636 pacote 778
pacotes 6364
padrão ANSI C++ 10521053
padrão C++ 6566, 1000 1001, 10551056
padrão de facto 48 1482
181-182
pagamento bruto 178179
palavra 381,
palavra(s)chave 102104. 109110
palavrachave operador de desigualdade
10161017
palavra-chave 68068 1
palavras e frases descritivas 234235
palavraschave operadores 1004, 1016 1018
palavraschave operadores lógicos
1016 10 17
palavraschave operadores sobre bits
1016- 1017
palavraschave operadores sobre bits
com atribuição 1016-1017
palavraschave 5 16517
palavraschave reservadas 109110
paI mndromo 79079 1
papéis 164
papel 53-54
par de chaves {}
paralelogramo 565-566
partialsort 985-986
partial_sort_copy 985-986
929-930,
58-59, 1050-1051
Pascal, Blaise 5
passagem por uma expressão da esquerda para a direita 791792
341
Passando arrays e elementos individuais de arrays para funções 279281
passando arrays para funções 278279,
286288
passando objetos grandes 225226 passando opções para um programa
87 1-872
281
passando um nome de arquivo para um programa 87 1872
passando um objeto através de chamada por valor 430-431
passando valores para funções 534535 passar argumentos de tamanho grande como referências const 399400
passar o tamanho de um array 336337 passar o tamanho de um array como um argumento 278279
passar uma estrutura 810811 passar uma estrutura através de chamada por referência 810811
passara através de chamada por valor
334-335
percorrer a subárvore direita 786787
percorrer a subárvore esquerda 786787
percorrer para a frente e para trás 773
percorrer um contêiner 760 percorrer uma árvore binária 78 1782,
1089
percurso em ordem 781782, 795
percurso em ordem de uma árvore
binária com recursividade 22022 1
percurso em pósordem 78 1782, 793
795
percurso em préordem 78 1782
percurso na ordem inversa 906907
percurso, travessia 906907
perda de dados 665666
perda de memória 544-545, 575-577,
714717, 761762, 905906, 918919
perda de recurso 699700, 7117 12
permutação 985
permutador lexicográfico 985
permutando strings 896897
permutar 284285
permutar dois strings 896897
personalizar software 583584
pesquisa 270273, 284285
pesquisa binária 288291
Pesquisa binária em um array ordenado
290291
pesquisa binária recursiva 220221,
288289, 317318
pesquisa de opinião 284285
pesquisa em árvore binária 794795
pesquisa linear 288291
pesquisa linear em um array 288289
pesquisa linear recursiva 220221, 288
289, 317318
pesquisando (Ou procurando) 482483, 760, 968. 970
pesquisando em arrays 288289
pesquisando em blocos de memória
838839
pesquisando em ,strings 356357,
830
pesquisando uma lista encadeada
recursivamente 220221
pesquisando uma lista recursivamente
793794
pesquisar uma lista encadeada 763764, 806
PHOAKS = People Helping One
Another Know Stuff 10511052
Pi 9697, 185186
P1 857, 857858
pig Lalin 390391
pilha 479480, 482483, 683684, 686
688, 708709, 760763, 773776
pilha de chamada de funções 33 1332,
708709
pilha de chamadas 33 1332
pilhas implementadas com arrays 479
480
pilhas usadas por compiladores 791792
pipe (1) 868869
planta arquitetônica 396397
plataforma de hardware 56
Plauger, P.J. 5657
990991
922923
polimorfismo 142143, 452, 564565,
583584, 589590, 608609, 6096 12,
620622, 629630, 803, 955
polimorfismo e referências 629630 polimorfismo em linguagens não
orientadas a objetos 629630
polimorfismo substituindo a lógica de 564565
polinomial 7778
polinômio de segundo grau 7778
ponta de seta 30 1304
ponteiro 225226, 320, 338339
ponteiro chamado this 468469
ponteiro const 5 24525
ponteiro constante 34034 1
ponteiro constante para dados constantes 329, 332334
ponteiro constante para dados nãoconstantes 329, 33 1333
ponteiro constante para uma constante inteira 332333
ponteiro da vtable de um objeto 630
632
ponteiro de classe base para um objeto da classe derivada 6 10612, 62 1622, 629
ponteiro de posição em arquivo de saída
740743
ponteiro de posição em um arquivo 735,
744746
ponteiro de vtable 632633
ponteiro implícito 462465
ponteiro indefinido 533534, 544545
ponteiro nãoconstante para dados constantes 329332
ponteiro nãoconstante para dados não constantes 329
ponteiro nulo (O) 732733. 760761, 794795, 878879
ponteiro para a frente 773774
ponteiro para classe base (ou tipo de
referência) 568569, 582584, 610
613, 629630, 705, 762763, 1007
1008, 10141015
ponteiro para classe derivada 567568, 10071008, l0141015
ponteiro 32032 1
ponteiro para função 349350, 629632, 7137 14, 990992, 1025
ponteiro para o fim 805806
ponteiro para trás 773774
ponteiro para um objeto 404405
ponteiro para um objeto de classe derivada 610611
ponteiro para uma estrutura 331332
ponteiro para uma função 34935 2, 874
ponteiro *) 340341
ponteiro 340341
ponteiro put 735736
ponteiro 462465, 468470, 519520, 534
ponteiro explicitamente
468469
ponteiros declarados 332333
ponteiros e 340341
ponteiros e referências para classes abstratas 611612
ponteiros e subscritos de arrays 340341 ponteiros para memória alocada dinamicamente 469470, 534
ponteiros podem ser usados com subscritos 341342
ponto de disparo 700701, 704705
ponto de entrada 150152
ponto de entrada de uma estrutura de controle 150152
ponto de entrada único 150152
ponto de saída 150152
ponto de saída único 150152
ponto decimal 116. 119120, 135136, 64 1642, 658659
ponto decimal em um número de ponto flutuante 191193
ponto flutuante 653654, 657658, 662 663
pontoevírgula (;) 6768, 8081, 108 109, 194196, 397398, 417, 420.
706, 856
pontoevírgula no fim de um protótipo de função 198199
pontoevírgula que terminam definição de estrutura 808809
686688, 774775, 950955 940941, 95l
952, 954955
porção controladora
porção do
portabilidade
portável 56
pósdecremento 126127, 546547
posição corrente em um stream 735736
posição de memória 7374. 110111
posição de memória do Simpletron 805
posição na memória 7374
posição temporária
em relação à posição atual em tream
um iterador 927 pósincremento 546547, 550 551
potência
Powersoft 10541055
precedência 7578, 182. 126127. 219,
precedência de 7576, 821 822
precedência do operador condicional
106 107
1090
precedência e associatividade de
operadores 148149
precedência nãoalterada por sobrecarga
5185 19
precisão 119120,641642,651653
precisão default 119120
prédecremento 126127, 546547
preencher com caracteres especificados
64 1642
preenchimento 654655, 660661, 824
825
preenchimento em uma estrutura 824
825
preenchimentos de buifer 667668 Préincrementando e pós
incrementando 126
préincremento 126127, 546547, 550 551
préprocessador 6163, 197198, 856
préprocessador C++ 61, 63, 6768
préprocessar 61, 63
pressionando as teclas em um teclado
639
prevenção de erro 608609
primeira passagem do compilador Simple 798801, 803
primeiro a entrar, primeiro a sair (FIFO) 481482, 778, 919920, 940941.
952953
primeiro argumento implícito 468469
primeiro refinamento 114115, 12 1122,
346347
primo 25425 5
principal 135136, 186, 188
princípio do menor privilégio 2092 10,
282283, 326329, 335336, 345346,
408409, 4 13414, 452453, 735,
872874, 927
950951, 954955
1403, 4134 14
privilégio 33233 3
privilégios de acesso 329, 332333
probabilidade 20 1202
problema da inclusão circular 494495
problema da média da turma 110111, 116
problema de Peter Minuit 137, 186, 188
problema de precedência 646647
problema do else sem correspondente
180181
problema dos resultados do exame 122
123
problema genérico de média da turma
113114. 116
problemas de ambigüidade 592, 594
procedimento 100101
procedimento de recuperação 697698
procedimento puro 406407
processador de textos 354355
processamento de acesso instantâneo
745746
processamento de arquivo 639641 processamento de arquivo de dados formatado 727
processamento de dados “brutos” 727
processamento de dados comercial 756
processamento de exceções polimórfico
711712
processamento de interrupção 697698
processamento de textos 39 1392
processamento de transações 947948
processamento em lotes 5354
processamentos de listas 763764
processando strings 320
processando strings em streams 907
908
Processando uma fila 778
processo de análise e projeto orientados a objetos (OOAD) 84
processo de compilação para um programa Simple 80 1802
processo de projeto 366367
processo de refinamento 114115
procurando strings e caracteres em um 898899
produtividade 63
produto de inteiros ímpares 183184
programa 5253
programa com pilha usando composição
777
programa de análise de dados 285, 287 288
programa de análise de pesquisa entre alunos 270271
programa de análise dos dados de pesquisa 285, 287288
programa de classificação de uso geral usando ponteiros para funções 350
351
programa de computador 5253 Programa de consulta de crédito 735
736
programa de contas a receber 756
Programa de contas bancárias 747748
programa de conversão de medidas 393
394
programa de craps 259260 Programa de embaralhamento e
distribuição de cartas 348
programa de folha de pagamento 5556 programa de impressão de histograma
272273
Programa de impressão de texto 6667 programa de lançamento de dados 273
274
Programa de lançamento de dados usando arrays em vez de switch
273274
Programa de média da turma com repetição controlada por contador
111112
Programa de média da turma com repetição controlada por sentinela
116118
programa de processamento de arquivo
756
programa de processamento de crédito
740741
programa de processamento de
transações 745746
programa deteste 615616, 618, 620
programa editor 61. 63. 100101
programa em pseudocódigo 100101
programa estruturado 150152
programa gerador de palavras a partir
de números de telefone 757
programa interpretador 56
programa para jogar 199201
programa para jogar pôquer 378379
Programa para simular o jogo de craps
206207
programa préprocessador 61, 63
programação baseada em objetos (OBP)
452
programação defensiva 131132
programação em linguagem de máquina
380381
programação estruturada 5053, 5660,
6566, 8182. 100103, 146147, 396,
479480, 87879
programação genérica 917919. 921
922, 10001001, 10551056
programação orientada a objetos (OOP)
5153, 5657. 6566. 8283. 155156,
192193, 363364,401402.452,
564565, 565567, 583584. 589590,
608609
programação polimórfica 630632
programação sem goto 101103
programador 5253
programador de computador 5253
programas com múltiplos arquivos
fonte 872874
programas grandes 190
programas tradutores 5556
Programmer’s Source 10541055
projeto 84
projeto de programa 104105
projeto Green 5758
Projeto Mac 6364
Projeto Mac do MIT 6364
projeto orientado a objetos (OOD) 81
82, 155156, 159160, 186, 188, 298
299, 3633 64, 396, 432434, 465466
projetos 874
proliferação de classes 584585
promoção 118119
prompt 7 172, 116118, 868869
prompt de linha de comando 868869
1092
154-156
stream
(. .)
rvalue
s
stream
*
string
seek get
seek put
substring
“sneakernet”
strings
ÍNDICE 1093
154-155,
set
985-986
<set> 200-201, 92
setnewhandj.er 713-
setsyrnmetricdifference
946-947
setjump
setprecision 119-120,652-653
setprecisiori(2) 135-136
folha
(DBMS) 727-729
+
+
+=
1094 INDICE
545-546, 556-557
stream
546-547
stream stream
.spool
spool
O ) )
>
Standard Template Librarv Online Reference Home Page
1055-1056
static 208-211,227-228,873-874,
881-883
1005-1008
staticcast< DerivedCJ.asse
*> 1007-1008
stream stream
tream stream
. h>
.
.
string
907
strings
strings *
strings
strings
strings
691,
1052- 1053
strpbrk 834-837
strrchr 834-837
strspn 834-838
strstr 834-838
794-795
subobjeto 1027-1028
1096 ÍNDICE
694-695
t
.
955
topo 114-115
210
Transmission Control Protocol
*
*
.strings
221
u
525-526
huge integer
UML Partners
underflowerror 716-717
(token)
874-876
204-205.
upcasting 1026-1027
274
exit e atexit
874
1029
heapsort
ÍNDICE 1097
828-829
siream endi
usingnamespace 1010-1012
sizeof 471,
v
vaarg 868-87 1
vaend 868-87 1
vaiist 868-87 1
va_start 868-87 1
vaiarray 919-920
true 149-150
vector 9
109S INDICE
222223
524-
string
*
vtable
w
walkthrough
64-65
x
Xerox’s Pato Alto Research Center (PARC) 5657
xor 1016-1017
xor 164
xor_eq 1016-1017
z
ZDNet University 1050-1051
Ox