83% found this document useful (6 votes)
654 views

Programming Principles and Practice Using C Third Edition Bjarne Stroustrup 2024 Scribd Download

C

Uploaded by

zuhupta
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
83% found this document useful (6 votes)
654 views

Programming Principles and Practice Using C Third Edition Bjarne Stroustrup 2024 Scribd Download

C

Uploaded by

zuhupta
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 52

Download the full version of the textbook now at textbookfull.

com

Programming Principles and Practice Using C


Third Edition Bjarne Stroustrup

https://textbookfull.com/product/programming-
principles-and-practice-using-c-third-edition-
bjarne-stroustrup/

Explore and download more textbook at https://textbookfull.com


Recommended digital products (PDF, EPUB, MOBI) that
you can download immediately if you are interested.

Programming: Principles and Practice Using C++ , Second


Edition Stroustrup

https://textbookfull.com/product/programming-principles-and-practice-
using-c-second-edition-stroustrup/

textbookfull.com

Programming Principles and Practice Using C 3rd Edition


Stroustrup

https://textbookfull.com/product/programming-principles-and-practice-
using-c-3rd-edition-stroustrup/

textbookfull.com

Computer Graphics Programming in OpenGL Using C++, Third


Edition Gordon Phd

https://textbookfull.com/product/computer-graphics-programming-in-
opengl-using-c-third-edition-gordon-phd/

textbookfull.com

Modern Acting: The Lost Chapter of American Film and


Theatre 1st Edition Cynthia Baron (Auth.)

https://textbookfull.com/product/modern-acting-the-lost-chapter-of-
american-film-and-theatre-1st-edition-cynthia-baron-auth/

textbookfull.com
The Practice of Spatial Analysis Helen Briassoulis

https://textbookfull.com/product/the-practice-of-spatial-analysis-
helen-briassoulis/

textbookfull.com

Disentangling the Philosophy of Economics 1st Edition


Mariusz Maziarz

https://textbookfull.com/product/disentangling-the-philosophy-of-
economics-1st-edition-mariusz-maziarz/

textbookfull.com

System Dynamics 4th Edition William J. Palm

https://textbookfull.com/product/system-dynamics-4th-edition-william-
j-palm/

textbookfull.com

Leftovers A History of Food Waste Preservation 1st Edition


Eleanor Barnett

https://textbookfull.com/product/leftovers-a-history-of-food-waste-
preservation-1st-edition-eleanor-barnett/

textbookfull.com

Quantum Technologies and Military Strategy 1st Edition


Ajey Lele

https://textbookfull.com/product/quantum-technologies-and-military-
strategy-1st-edition-ajey-lele-2/

textbookfull.com
Rethinking Talent Decisions A Tale of Complexity
Technology and Subjectivity 1st Edition Wiblen

https://textbookfull.com/product/rethinking-talent-decisions-a-tale-
of-complexity-technology-and-subjectivity-1st-edition-wiblen/

textbookfull.com
About This eBook
ePUB is an open, industry-standard format for eBooks. However,
support of ePUB and its many features varies across reading devices
and applications. Use your device or app settings to customize the
presentation to your liking. Settings that you can customize often
include font, font size, single or double column, landscape or portrait
mode, and figures that you can click or tap to enlarge. For additional
information about the settings and features on your reading device
or app, visit the device manufacturer’s Web site.
Many titles include programming code or configuration examples.
To optimize the presentation of these elements, view the eBook in
single-column, landscape mode and adjust the font size to the
smallest setting. In addition to presenting code and configurations in
the reflowable text format, we have included images of the code
that mimic the presentation found in the print book; therefore,
where the reflowable format may compromise the presentation of
the code listing, you will see a “Click here to view code image” link.
Click the link to view the print-fidelity code image. To return to the
previous page viewed, click the Back button on your device or app.
Programming: Principles and
Practice Using C++

Third Edition

Bjarne Stroustrup

Hoboken, New Jersey


Cover photo by Photowood Inc./Corbis.
Author photo courtesy of Bjarne Stroustrup.
Page 294: “Promenade a Skagen” by Peder Severin Kroyer.
Page 308: Photo of NASA’s Ingenuity Mars Helicopter, The National
Aeronautics and Space Administration (NASA).
Page 354: Photo of Hurricane Rita as seen from space, The National
Oceanic and Atmospheric Administration (NOAA).

Many of the designations used by manufacturers and sellers to


distinguish their products are claimed as trademarks. Where those
designations appear in this book, and the publisher was aware of a
trademark claim, the designations have been printed with initial
capital letters or in all capitals.

The author and publisher have taken care in the preparation of this
book, but make no expressed or implied warranty of any kind and
assume no responsibility for errors or omissions. No liability is
assumed for incidental or consequential damages in connection with
or arising out of the use of the information or programs contained
herein.

For information about buying this title in bulk quantities, or for


special sales opportunities (which may include electronic versions;
custom cover designs; and content particular to your business,
training goals, marketing focus, or branding interests), please
contact our corporate sales department at
[email protected] or (800) 382-3419.

For government sales inquiries, please contact


[email protected].
For questions about sales outside the U.S., please contact
[email protected].

Visit us on the Web: informit.com/aw

Library of Congress Control Number: 2024932369

Copyright 2024 by Pearson Education, Inc.

All rights reserved. This publication is protected by copyright, and


permission must be obtained from the publisher prior to any
prohibited reproduction, storage in a retrieval system, or
transmission in any form or by any means, electronic, mechanical,
photocopying, recording, or likewise. For information regarding
permissions, request forms and the appropriate contacts within the
Pearson Education Global Rights & Permissions Department, please
visit www.pearson.com/permissions.

This book was typeset in Times and Helvetica by the author.

ISBN-13: 978-0-13-830868-1
ISBN-10: 0-13-83086-3
First printing, May 2024
$PrintCode
Contents

Preface

0 Notes to the Reader


0.1 The structure of this book
0.2 A philosophy of teaching and learning
0.3 ISO standard C++
0.4 PPP support
0.5 Author biography
0.6 Bibliography

Part I: The Basics

1 Hello, World!
1.1 Programs
1.2 The classic first program
1.3 Compilation
1.4 Linking
1.5 Programming environments

2 Objects, Types, and Values


2.1 Input
2.2 Variables
2.3 Input and type
2.4 Operations and operators
2.5 Assignment and initialization
2.6 Names
2.7 Types and objects
2.8 Type safety
2.9 Conversions
2.10 Type deduction: auto

3 Computation
3.1 Computation
3.2 Objectives and tools
3.3 Expressions
3.4 Statements
3.5 Functions
3.6 vector
3.7 Language features

4 Errors!
4.1 Introduction
4.2 Sources of errors
4.3 Compile-time errors
4.4 Link-time errors
4.5 Run-time errors
4.6 Exceptions
4.7 Avoiding and finding errors

5 Writing a Program
5.1 A problem
5.2 Thinking about the problem
5.3 Back to the calculator!
5.4 Back to the drawing board
5.5 Turning a grammar into code
5.6 Trying the first version
5.7 Trying the second version
5.8 Token streams
5.9 Program structure

6 Completing a Program
6.1 Introduction
6.2 Input and output
6.3 Error handling
6.4 Negative numbers
6.5 Remainder: %
6.6 Cleaning up the code
6.7 Recovering from errors
6.8 Variables

7 Technicalities: Functions, etc.


7.1 Technicalities
7.2 Declarations and definitions
7.3 Scope
7.4 Function call and return
7.5 Order of evaluation
7.6 Namespaces
7.7 Modules and headers

8 Technicalities: Classes, etc.


8.1 User-defined types
8.2 Classes and members
8.3 Interface and implementation
8.4 Evolving a class: Date
8.5 Enumerations
8.6 Operator overloading
Visit https://textbookfull.com
now to explore a rich
collection of eBooks, textbook
and enjoy exciting offers!
8.7 Class interfaces

Part II: Input and Output

9 Input and Output Streams


9.1 Input and output
9.2 The I/O stream model
9.3 Files
9.4 I/O error handling
9.5 Reading a single value
9.6 User-defined output operators
9.7 User-defined input operators
9.8 A standard input loop
9.9 Reading a structured file
9.10 Formatting
9.11 String streams

10 A Display Model
10.1 Why graphics?
10.2 A display model
10.3 A first example
10.4 Using a GUI library
10.5 Coordinates
10.6 Shapes
10.7 Using Shape primitives
10.8 Getting the first example to run

11 Graphics Classes
11.1 Overview of graphics classes
11.2 Point and Line
11.3 Lines
11.4 Color
11.5 Line_style
11.6 Polylines
11.7 Closed shapes
11.8 Text
11.9 Mark
11.10 Image

12 Class Design
12.1 Design principles
12.2 Shape
12.3 Base and derived classes
12.4 Other Shape functions
12.5 Benefits of object-oriented programming

13 Graphing Functions and Data


13.1 Introduction
13.2 Graphing simple functions
13.3 Function
13.4 Axis
13.5 Approximation
13.6 Graphing data

14 Graphical User Interfaces


14.1 User-interface alternatives
14.2 The “Next” button
14.3 A simple window
14.4 Button and other Widgets
14.5 An example: drawing lines
14.6 Simple animation
14.7 Debugging GUI code

Part III: Data and Algorithms

15 Vector and Free Store


15.1 Introduction
15.2 vector basics
15.3 Memory, addresses, and pointers
15.4 Free store and pointers
15.5 Destructors
15.6 Access to elements
15.7 An example: lists
15.8 The this pointer

16 Arrays, Pointers, and References


16.1 Arrays
16.2 Pointers and references
16.3 C-style strings
16.4 Alternatives to pointer use
16.5 An example: palindromes

17 Essential Operations
17.1 Introduction
17.2 Access to elements
17.3 List initialization
17.4 Copying and moving
17.5 Essential operations
17.6 Other useful operations
17.7 Remaining Vector problems
17.8 Changing size
17.9 Our Vector so far
18 Templates and Exceptions
18.1 Templates
18.2 Generalizing Vector
18.3 Range checking and exceptions
18.4 Resources and exceptions
18.5 Resource-management pointers

19 Containers and Iterators


19.1 Storing and processing data
19.2 Sequences and iterators
19.3 Linked lists
19.4 Generalizing Vector yet again
19.5 An example: a simple text editor
19.6 vector, list, and string

20 Maps and Sets


20.1 Associative containers
20.2 map
20.3 unordered_map
20.4 Timing
20.5 set
20.6 Container overview
20.7 Ranges and iterators

21 Algorithms
21.1 Standard-library algorithms
21.2 Function objects
21.3 Numerical algorithms
21.4 Copying
21.5 Sorting and searching
Index
Preface

Damn the
torpedoes!
Full speed ahead.
– Admiral
Farragut

Programming is the art of expressing solutions to problems so that a


computer can execute those solutions. Much of the effort in
programming is spent finding and refining solutions. Often, a
problem is only fully understood through the process of
programming a solution for it.
This book is for someone who has never programmed before but
is willing to work hard to learn. It helps you understand the
principles and acquire the practical skills of programming using the
C++ programming language. It can also be used by someone with
some programming knowledge who wants a more thorough
grounding in programming principles and contemporary C++.
Why would you want to program? Our civilization runs on
software. Without understanding software, you are reduced to
believing in “magic” and will be locked out of many of the most
interesting, profitable, and socially useful technical fields of work.
When I talk about programming, I think of the whole spectrum of
computer programs from personal computer applications with GUIs
(graphical user interfaces), through engineering calculations and
embedded systems control applications (such as digital cameras,
cars, and cell phones), to text manipulation applications as found in
many humanities and business applications. Like mathematics,
programming – when done well – is a valuable intellectual exercise
that sharpens our ability to think. However, thanks to feedback from
the computer, programming is more concrete than most forms of
math and therefore accessible to more people. It is a way to reach
out and change the world – ideally for the better. Finally,
programming can be great fun.
There are many kinds of programming. This book aims to serve
those who want to write nontrivial programs for the use of others
and to do so responsibly, providing a decent level of system quality.
That is, I assume that you want to achieve a level of
professionalism. Consequently, I chose the topics for this book to
cover what is needed to get started with real-world programming,
not just what is easy to teach and learn. If you need a technique to
get basic work done right, I describe it, demonstrate concepts and
language facilities needed to support the technique, and provide
exercises for it. If you just want to understand toy programs or write
programs that just call code provided by others, you can get along
with far less than I present. In such cases, you will probably also be
better served by a language that’s simpler than C++. On the other
hand, I won’t waste your time with material of marginal practical
importance. If an idea is explained here, it’s because you’ll almost
certainly need it.
Programming is learned by writing programs. In this,
programming is similar to other endeavors with a practical
component. You cannot learn to swim, to play a musical instrument,
or to drive a car just from reading a book – you must practice. Nor
can you become a good programmer without reading and writing
lots of code. This book focuses on code examples closely tied to
explanatory text and diagrams. You need those to understand the
ideals, concepts, and principles of programming and to master the
language constructs used to express them. That’s essential, but by
itself, it will not give you the practical skills of programming. For
that, you need to do the exercises and get used to the tools for
writing, compiling, and running programs. You need to make your
own mistakes and learn to correct them. There is no substitute for
writing code. Besides, that’s where the fun is!
There is more to programming – much more – than following a
few rules and reading the manual. This book is not focused on “the
syntax of C++.” C++ is used to illustrate fundamental concepts.
Understanding the fundamental ideals, principles, and techniques is
the essence of a good programmer. Also, “the fundamentals” are
what last: they will still be essential long after today’s programming
languages and tools have evolved or been replaced.
Code can be beautiful as well as useful. This book is written to
help you to understand what it means for code to be beautiful, to
help you to master the principles of creating such code, and to build
up the practical skills to create it. Good luck with programming!

Previous Editions
The third edition of Programming: Principles and Practice Using C++
is about half the size of the second edition. Students having to carry
the book will appreciate the lighter weight. The reason for the
reduced size is simply that more information about C++ and its
standard library is available on the Web. The essence of the book
that is generally used in a course in programming is in this third
edition (“PPP3”), updated to C++20 plus a bit of C++23. The fourth
part of the previous edition (“PPP2”) was designed to provide extra
information for students to look up when needed and is available on
the Web:

Chapter 1: Computers, People, and Programming


Chapter 11: Customizing Input and Output
Chapter 22: Ideas and History
Chapter 23 Text Manipulation
Chapter 24: Numerics
Chapter 25: Embedded Systems Programming
Chapter 26: Testing
Chapter 27: The C Programming Language
Glossary

Where I felt it useful to reference these chapters, the references


look like this: PPP2.Ch22 or PPP2.§27.1.

Acknowledgments
Special thanks to the people who reviewed drafts of this book and
suggested many improvements: Clovis L. Tondo, Jose Daniel Garcia
Sanchez, J.C. van Winkel, and Ville Voutilainen. Also, Ville Voutilainen
did the non-trivial mapping of the GUI/Graphics interface library to
Qt, making it portable to an amazing range of systems.
Also, thanks to the many people who contributed to the first and
second editions of this book. Many of their comments are reflected
in this third edition.
0

Notes to the Reader

eiπ + 1
– Leonhard Euler

This chapter is a grab bag of information; it aims to give you an idea of


what to expect from the rest of the book. Please skim through it and read
what you find interesting. Before writing any code, read “PPP support”
(§0.4). A teacher will find most parts immediately useful. If you are
reading this book as a novice, please don’t try to understand everything.
You may want to return and reread this chapter once you feel comfortable
writing and executing small programs.

§0.1 The structure of this book


General approach; Drills, exercises, etc.; What comes after this book?
§0.2 A philosophy of teaching and learning
A note to students; A note to teachers
§0.3 ISO standard C++
Portability; Guarantees; A brief history of C++
§0.4 PPP support
Web resources
Visit https://textbookfull.com
now to explore a rich
collection of eBooks, textbook
and enjoy exciting offers!
§0.5 Author biography
§0.6 Bibliography

0.1 The structure of this book


This book consists of three parts:

Part I (Chapter 1 to Chapter 8) presents the fundamental concepts and


techniques of programming together with the C++ language and library
facilities needed to get started writing code. This includes the type system,
arithmetic operations, control structures, error handling, and the design,
implementation, and use of functions and user-defined types.
Part II (Chapter 9 to Chapter 14) first describes how to get numeric and text
data from the keyboard and from files, and how to produce corresponding
output to the screen and to files. Then, we show how to present numeric data,
text, and geometric shapes as graphical output, and how to get input into a
program from a graphical user interface (GUI). As part of that, we introduce
the fundamental principles and techniques of object-oriented programming.
Part III (Chapter 15 to Chapter 21) focuses on the C++ standard library’s
containers and algorithms framework (often referred to as the STL). We show
how containers (such as vector, list, and map) are implemented and used. In
doing so, we introduce low-level facilities such as pointers, arrays, and dynamic
memory. We also show how to handle errors using exceptions and how to
parameterize our classes and functions using templates. As part of that, we
introduce the fundamental principles and techniques of generic programming.
We also demonstrate the design and use of standard-library algorithms (such
as sort, find, and inner_product).

The order of topics is determined by programming techniques, rather than


programming language features.

CC
To ease review and to help you if you miss a key point during a first reading
where you have yet to discover which kind of information is crucial, we place three
kinds of “alert markers” in the margin:

CC: concepts and techniques (this paragraph is an example of that)


AA: advice
XX: warning
The use of CC, AA, and XX, rather than a single token in different colors, is to help
where colors are not easy to distinguish.

0.1.1 General approach


In this book, we address you directly. That is simpler and clearer than the
conventional “professional” indirect form of address, as found in most scientific
papers. By “you” we mean “you, the reader,” and by “we” we mean “you, the
author, and teachers,” working together through a problem, as we might have done
had we been in the same room. I use "I" when I refer to my own work or personal
opinions.

AA
This book is designed to be read chapter by chapter from the beginning to the
end. Often, you’ll want to go back to look at something a second or a third time. In
fact, that’s the only sensible approach, as you’ll always dash past some details that
you don’t yet see the point in. In such cases, you’ll eventually go back again.
Despite the index and the cross-references, this is not a book that you can open to
any page and start reading with any expectation of success. Each section and each
chapter assume understanding of what came before.
Each chapter is a reasonably self-contained unit, meant to be read in “one
sitting” (logically, if not always feasible on a student’s tight schedule). That’s one
major criterion for separating the text into chapters. Other criteria include that a
chapter is a suitable unit for drills and exercises and that each chapter presents
some specific concept, idea, or technique. This plurality of criteria has left a few
chapters uncomfortably long, so please don’t take “in one sitting” too literally. In
particular, once you have thought about the review questions, done the drill, and
worked on a few exercises, you’ll often find that you have to go back to reread a
few sections.
A common praise for a textbook is “It answered all my questions just as I
thought of them!” That’s an ideal for minor technical questions, and early readers
have observed the phenomenon with this book. However, that cannot be the whole
ideal. We raise questions that a novice would probably not think of. We aim to ask
and answer questions that you need to consider when writing quality software for
the use of others. Learning to ask the right (often hard) questions is an essential
part of learning to think as a programmer. Asking only the easy and obvious
questions would make you feel good, but it wouldn’t help make you a programmer.
We try to respect your intelligence and to be considerate about your time. In our
presentation, we aim for professionalism rather than cuteness, and we’d rather
understate a point than hype it. We try not to exaggerate the importance of a
programming technique or a language feature, but please don’t underestimate a
simple statement like “This is often useful.” If we quietly emphasize that something
is important, we mean that you’ll sooner or later waste days if you don’t master it.
Our use of humor is more limited than we would have preferred, but experience
shows that people’s ideas of what is funny differ dramatically and that a failed
attempt at humor can be confusing.

CC
We do not pretend that our ideas or the tools offered are perfect. No tool, library,
language, or technique is “the solution” to all of the many challenges facing a
programmer. At best, a language can help you to develop and express your solution.
We try hard to avoid “white lies”; that is, we refrain from oversimplified
explanations that are clear and easy to understand, but not true in the context of
real languages and real problems.

0.1.2 Drills, exercises, etc


AA
Programming is not just an intellectual activity, so writing programs is necessary to
master programming skills. We provide three levels of programming practice:

Drills: A drill is a very simple exercise devised to develop practical, almost


mechanical skills. A drill usually consists of a sequence of modifications of a
single program. You should do every drill. A drill is not asking for deep
understanding, cleverness, or initiative. We consider the drills part of the basic
fabric of the book. If you haven’t done the drills, you have not “done” the book.
Exercises: Some exercises are trivial, and others are very hard, but most are
intended to leave some scope for initiative and imagination. If you are serious,
you’ll do quite a few exercises. At least do enough to know which are difficult
for you. Then do a few more of those. That’s how you’ll learn the most. The
exercises are meant to be manageable without exceptional cleverness, rather
than to be tricky puzzles. However, we hope that we have provided exercises
that are hard enough to challenge anybody and enough exercises to exhaust
even the best student’s available time. We do not expect you to do them all,
but feel free to try.
Try this: Some people like to put the book aside and try some examples before
reading to the end of a chapter; others prefer to read ahead to the end before
trying to get code to run. To support readers with the former preference, we
provide simple suggestions for practical work labeled Try this at natural breaks
in the text. A Try this is generally in the nature of a drill but focused narrowly
on the topic that precedes it. If you pass a Try this without trying it out –
maybe because you are not near a computer or you find the text riveting – do
return to it when you do the chapter drill; a Try this either complements the
chapter drill or is a part of it.

In addition, at the end of each chapter we offer some help to solidify what’s
learned:

Review: At the end of each chapter, you’ll find a set of review questions. They
are intended to point you to the key ideas explained in the chapter. One way to
look at the review questions is as a complement to the exercises: the exercises
focus on the practical aspects of programming, whereas the review questions
try to help you articulate the ideas and concepts. In that, they resemble good
interview questions.
Terms: A section at the end of each chapter presents the basic vocabulary of
programming and of C++. If you want to understand what people say about
programming topics and to articulate your own ideas, you should know what
each term means.
Postscript: A paragraph intended to provide some perspective for the material
presented.

In addition, we recommend that you take part in a small project (and more if time
allows for it). A project is intended to produce a complete useful program. Ideally, a
project is done by a small group of people (e.g., three people) working together
(e.g., while progressing through the later chapters of the book). Most people find
such projects the most fun and that they tie everything together.

CC
Learning involves repetition. Our ideal is to make every important point at least
twice and to reinforce it with exercises.

0.1.3 What comes after this book?


AA
At the end of this book, will you be an expert at programming and at C++? Of
course not! When done well, programming is a subtle, deep, and highly skilled art
building on a variety of technical skills. You should no more expect to become an
expert at programming in four months than you should expect to become an expert
in biology, in math, in a natural language (such as Chinese, English, or Danish), or
at playing the violin in four months – or in half a year, or a year. What you should
hope for, and what you can expect if you approach this book seriously, is to have a
really good start that allows you to write relatively simple useful programs, to be
able to read more complex programs, and to have a good conceptual and practical
background for further work.
The best follow-up to this initial course is to work on a project developing code
to be used by someone else; preferably guided by an experienced developer. After
that, or (even better) in parallel with a project, read either a professional-level
general textbook, a more specialized book relating to the needs of your project, or a
textbook focusing on a particular aspect of C++ (such as algorithms, graphics,
scientific computation, finance, or games); see §0.6.

AA
Eventually, you should learn another programming language. We don’t consider
it possible to be a professional in the realm of software – even if you are not
primarily a programmer – without knowing more than one language. Why? No large
program is written in a single language. Also, different languages typically differ in
the way code is thought about and programs are constructed. Design techniques,
availability of libraries, and the way programs are built differ, sometimes
dramatically. Even when the syntaxes of two languages are similar, the similarity is
typically only skin deep. Performance, detection of errors, and constraints on what
can be expressed typically differ. This is similar to the ways natural languages and
cultures differ. Knowing only a single language and a single culture implies the
danger of thinking that “the way we do things” is the only way or the only good
way. That way opportunities are missed, and sub-optimal programs are produced.
One of the best ways to avoid such problems is to know several languages
(programming languages and natural languages).

0.2 A philosophy of teaching and learning


What are we trying to help you learn? And how are we approaching the process of
teaching? We try to present the minimal concepts, techniques, and tools for you to
do effective practical programs, including

Program organization
Debugging and testing
Class design
Computation
Function and algorithm design
Graphics (two-dimensional only)
Graphical user interfaces (GUIs)
Files and stream input and output (I/O)
Random documents with unrelated
content Scribd suggests to you:
Stand unserer heutigen Kunde gebracht, ist erfreulicherweise
nunmehr, wenigstens vorläufig zum Theil, in Aussicht gestellt. [14]

Ganz nahe schliesst sich diese Art keiner bekannten an. V.


brachypterus (Temm.) von Java, Sumátra und Banka (D o b s o n
Cat. 1878, 223) hat, abgesehen von anderen Differenzen, kurze
Flügel, keinen Penisknochen und weicht in der Bezahnung
wesentlich ab. Die Untergattung Hesperoptenus Ptrs. (Mb. Ak. Berl.
1868, 626) ist u. a. auch auf das Vorhandensein eines Penisknochen
gegründet worden, welcher Charakter aber, ausser bei V. petersi, in
der Gattung Vesperugo noch sonst vorkommen dürfte; es sind bis
jetzt noch nicht alle Arten daraufhin untersucht.

Anmerkung

Ich benutze diese Gelegenheit zur Charakterisirung einer


Subspecies von Neu Guinea.

P e t e r s & D o r i a beschrieben (Ann. Mus. Gen. XVI, 696 1881)


nach einem Weibchen von Salawati Vesperugo papuanus und
T h o m a s (NZ. II, 164 1895) führte ihn von Fergusson Insel,
D’Entrecasteaux Gruppe, im Südosten von Neu Guinea, auf, ohne
weiter eine Bemerkung dazu zu machen. Das Dresdner Museum
erhielt eine Anzahl Exemplare von Bongu, an der Astrolabebai, Ost
Neu Guinea, die dieser Art sehr nahe stehen, wenn auch nicht mit
ihr zu identificiren sind. Ich nenne sie:

Vesperugo papuanus orientalis.


Sie unterscheiden sich in folgenden Punkten: Vorderarm 27–31 mm
(statt 27), 27 kommt nur bei éinem Exemplar unter 19 vor, meist 28,
aber auch 29, 30 und 31 mm; die Füsse sind viel robuster, die
Haftscheiben am Daumen und an den Fussohlen viel deutlicher
ausgeprägt (die Individuen variiren in dieser Beziehung etwas
untereinander); endlich ist p 2 inf. ⅔ so gross wie p 1 inf., nicht ½
wie bei dem Salawati-Exemplare nach der Angabe von P e t e r s &
D o r i a , wobei ich aber bemerken muss, dass bei dem Typus, den
ich durch die Güte des Hrn. Dr. G e s t r o untersuchen konnte, das
Verhältniss von ½ nicht scharf ausgeprägt ist, es neigt da auch zu ⅔.
Auf alle Fälle aber differiren die Ost Neu Guinea-Exemplare von dem
von Salawati genügend, um sie vorläufig subspecifisch abzutrennen.
Es wird sich später erweisen, ob ihnen Species-Charakter zukommt.

Das Männchen besitzt einen kleinen


z w e i s p i t z i g e n R u t h e n k n o c h e n . D o b s o n (Cat. 1878 p.
XXIX) sagt von den Penisknochen der Chiropteren im Allgemeinen:
„Its form varies sometimes considerably even in species of the same
genus.“

[Inhalt]

19. Vesperugo minahassae n. sp.

Tafel IV, Fig. 3 (​2⁄1 n. Gr.)

V. brunneus (supra: Ridgway inter III, 5 et 11, subtus: III, 11),


alis nigricantibus, corpore compacto, capite depresso, auriculis
modicis, margine externo infra labiorum commissuram inserto,
trago margine interno fere recto, externo convexo, apice
subacuto; alis malleolis affixis; cauda apice extremo prominente;
incisivo primo superiore tricuspido, secundo parvo, apice
subcrenato; praemolari primo superiore juxta caninum inserto,
secundo minimo, intra aliorum dentium ordinem posito,
extrinsecus non visibili; incisivis inferioribus secundum
mandibulae directionem positis; pene ossiculo armato.
Long. tot. c. 95 mm, antibr. 36 mm.
Habitatio: Celébes.
mas,a. in Spiritus, Tomohon, Minahassa, Nord Celébes, II
94.

Körper gedrungen. O b e r s e i t e zwischen vandykebraun und


proutbraun (Ridgw.), kurzhaarig, glänzend, sammetartig,
U n t e r s e i t e proutbraun, mässig stark behaart. Dorsal ist nur ein
Drittel des Oberarms und die Hälfte des Oberschenkels mit Haaren
besetzt, ventral reichen sie etwas weiter.

F l u g h ä u t e schwärzlich, dorsale Oberfläche nackt, nur auf der


Schulterflughaut ein Querstreif spärlich mit Haaren besetzt, und die
Schenkelflughaut schwach, kaum bis zum Ende des ersten
Schwanzwirbels behaart; ventrale Oberfläche ebenfalls nackt, nur
auf der Schulter- und Fingerflughaut zwischen Vorderarm und 5.
Finger spärliche Haare, sowie ein Dreieck am Ellenbogen kaum bis
zum Knie, und die Schenkelflughaut in ihrem proximalen Theile,
schwach behaart. Die Lendenflughaut ist am Knöchel angewachsen,
[15]die Schenkelflughaut schliesst den Schwanz bis zur Mitte des
letzten Gliedes ein, und er liegt in ihrer Oberseite; der hintere freie
Rand der Schenkelflughaut verläuft ziemlich gerade, der Sporn trägt
an seiner proximalen Hälfte ein bis 1.5 mm breites, 9 mm langes
Hautläppchen (rechts kürzer).

O h r e n innen, vom crus helicis und anthelicis querüber bis zur


Spitze, spärlich mit Haaren besetzt, aussen nackt; Innenrand
gerade, Spitze abgerundet, Aussenrand convex, Antitragus stark
gewulstet, breit, etwas über der Mitte des äusseren Randes des
linken Ohrs ein kleiner Einschnitt, darüber der Helix etwas
ausladend, am rechten Ohre fehlt dieser Einschnitt, ist aber durch
eine leichte Concavität des Randes, sowie durch eine seichte
Depression markirt; der äussere Ohrrand endet 6 mm unterhalb des
Auges, 3.5 mm hinter und etwas unter dem Mundwinkel 3, nicht am
Mundwinkel, wie bei den meisten Vesperugo-Arten; crus helicis
wulstig, crus anthelicis gut ausgebildet; Tragus mit verbreiterter
Basis, proximal mit Haaren bestanden, Innenrand ziemlich gerade,
Spitze etwas abgerundet, Aussenrand convex, in der Mitte etwas
verdickt, Zacken angedeutet, in der unteren Hälfte gerade.

K o p f platt, Augen klein, die Behaarung beginnt erst hinter einer


Querrinne, die die S c h n a u z e abgrenzt; diese schwach behaart,
breit (21 mm) und kurz (5 mm), vorn abgestutzt, an den
Nasenlöchern 4.5 mm breit, Drüsentheil gut entwickelt, L i p p e n
median glatt, lateral mit etwas papillösen Aussenrändern; die
zwischen den zwei unteren Praemolaren und dem Lippenrande
befindliche grosse Hautpapille hat hier den Lippenrand nicht nur
nach aussen gedrängt, sondern auch bewirkt, dass er an dieser
Stelle verschmälert und nach unten ausgerandet ist, so dass die
Papille von aussen sichtbar wird; Oberlippe die Unterlippe
überragend; N a s e n l ö c h e r sublateral nach aussen offen,
Ränder, besonders median gewulstet, Zwischenraum 1.5 mm breit,
nicht vertieft; Unterkiefer und Kinn ziemlich glatt, schwach behaart,
auf der Kehle eine runde Warze mit kurzen und einigen langen
Haaren, wie sie oft vorkommt.

B e z a h n u n g : i 1 sup. dreizackig, mit der innersten längsten Zacke


median sehr stark ausladend, die mittlere zurückstehend, kurz und
breit, die äusserste noch weiter zurück und klein, i 2 nur so lang wie
diese letztere, an der Spitze leicht eingekerbt, ebenfalls nach innen
gerichtet, und dicht an i 1 stehend, Diastema der zwei mittleren
Incisiven, an den Wurzeln gemessen, etwas über 1 mm; c sup. 2
mm lang, Diastema zwischen ihm und i 2 nur gering; p 1 sup. steht
dicht an c und ist halb so lang, p 2 ganz innenständig, sehr klein,
eben das Zahnfleisch überragend und nur bei genauester
Untersuchung kenntlich, von aussen ganz unsichtbar. Die sechs
unteren Incisiven in der Richtung des Kiefers stehend, dreilappig,
der zweite anscheinend der grösste (sie sind bei dem Exemplare
rechts und links nicht ganz gleich), der dritte dicht am Caninus,
dieser 1.5 mm lang, p 2 inf. dicht daran stehend und fast ⅔ so gross,
p 1 dicht an p 2 und fast eben so gross und so lang wie m 1.

P e n i s lang, ein Stützknochen in der Ruthenspitze, Praeputium


zweilappig und mit kurzen stacheligen Haaren besetzt.

Maasse:

Kopf 18 mm
Körper 41
,,
Ohr 14 ×
10 ,,
Vorderer Ohrrand 8.5
,,
Tragus (Länge von der tiefstenStelle der Basis bis zur 5×2
Spitze) ,,
Humerus 24
,,
Vorderarm 36
,,
Dig. 1 mit Kralle 6.3
,,
2 (33.5 + 5.5) 39
,, ,,
3 (35 + 11.5 + 9 + 3) 58.5
,, ,,
4 (33 + 11 + 5) 49
,, ,,
5 (29 + 5.5 + 4.7) 39.2
,, ,,
Femur 12
,,
Unterschenkel 15.5
,,
Fuss mit Krallen 10
,,
Sporn c. 13
,,
Schwanz c. 37
,,
Penis 9
,,

Diese Art hat mit einer Reihe von Vesperugo-Arten gewisse


Ähnlichkeiten, so mit V. stenopterus Dobs. von Bórneo, oder auch
mit imbricatus Horsf. von Malakka, Sumátra, Java und Bórneo,
affinis Dobs. von Yunnan, indicus Dobs. von Vorderindien etc., aber
sie ist keiner bekannten zu subsummiren. [16]Das Gebiss, der tiefe
Ansatz des äusseren Ohrrandes, und die Combination aller ihrer
anderen Charaktere genügen, um sie leicht zu erkennen, ohne dass
es nöthig wäre, die Unterschiede von einer Reihe anderer Arten im
Einzelnen namhaft zu machen.
Sonst ist bis jetzt von Celébes an Vesperugo-Arten nur der von
Vorderindien bis zu den Philippinen, Neu Guinea und Australien weit
verbreitete V. abramus (Temm.) nachgewiesen. D o b s o n (Cat.
1878, 228) nennt ein von mir gesammeltes Exemplar im Britischen
Museum von Nord Celébes mit der Bemerkung, dass die Form und
die Stellung der oberen Incisiven ein wenig abweiche, und eins von
Süd Celébes; das Dresdner Museum besitzt ebenfalls je eins von
Nord und Süd Celébes (Amurang und Makassar).

[Inhalt]

20. Vespertilio muricola Hdgs.

11 Exemplare,
a–l. in Spiritus, 3 mares (36–37.5 mm), 7 fem.
(36–38), 1 fem. juv. (24); Kema (4. VIII 93), Tomohon (4.
IX 94) etc., Minahassa, Nord Celébes.
1 mas,
m. in Spiritus, Loka, Pik von Bonthain, c. 1200 m,
Süd Celébes, X 95 (33 mm). Dieses Exemplar ist klein,
aber adult.

D o b s o n (Cat. 1878, 288) giebt für den Vorderarm allgemein 31.75


mm (1.25 inch.) und (p. 317) 34.29 (1.35) an; J e n t i n k (Webers
Zool. Erg. I, 128 1890) für Exemplare von Java (mares) 33.5–35
mm, (fem.) 34–36.5, von Sumátra 36, von Flores 35; Dresdner
Exemplare messen: Bórneo 33.5, Ambon 37–38, was gut mit
D o b s o n s früherer Angabe (Cat. As. Chir. 1876, 135) Bórneo 34
mm (1.35 inch.), Ambon 38 (1.5) stimmt, seine Maasse variiren
überhaupt zwischen 30.5 und 38 mm (1.2 und 1.5 inch.). Es fragt
sich, ob nicht bei genauem Studium, wozu ein grosses Material von
überall her gehörte, Rassen unterschieden werden können.
D o b s o n (l. c. 136) hat sich hierüber zwar in negativem Sinn
ausgesprochen, allein sein Material genügte keineswegs, ein
endgültiges Urtheil zu gewinnen.

Die Art, die von Vorderindien bis zu den Molukken nachgewiesen ist,
wurde auch schon speciell von Nord Celébes registrirt (D o b s o n
Cat. 1878, 317 und J e n t i n k Cat. MPB. XII, 190 1888), während
der S a r a s i n sche Fundort von Süd Celébes neu ist. Dresden
besitzt sie auch von NW Neu Guinea (36 mm).

D o b s o n (Cat. 1878, 316 Anm.) sagte, dass ein Exemplar von


Sumátra im Leidener Museum in der Ohrform etwas abweiche, und
ich hebe daher hervor, dass die Celébes-Individuen in dieser
Beziehung unter einander differiren, und zwar speciell hinsichtlich
des äusseren oberen Ohrrandes, sowie des Tragus; auch die
Grösse des Hautläppchens am Sporne variirt. Nach D o b s o n
(Mon. As. Chir. 1876, 136) kann muricola von den verwandten Arten
auch durch den kleinen, aber deutlichen postcalcanealen Lappen
unterschieden werden, allein bei einigen der vorliegenden
Exemplare von Celébes fehlt er so gut wie ganz.

Von anderen Vespertilio-Arten hat D o b s o n (Cat. 1878, 292) noch


V. adversus Horsf. von Celébes aufgeführt, auch ist ein von mir im
Jahr 1871 gesammeltes Exemplar von Gorontalo im Berliner
Museum; J e n t i n k hatte die Art auch von der Minahassa genannt
(NLM. V, 175 1883), später aber als muricola aufgeführt (Cat. MPB.
XII, 191 1888). Ferner nennt J e n t i n k (l. c. p. 186 und Webers
Zool. Erg. I, 128 1891) von Celébes V. hasselti Temm.

1 Bezeichnungen nach H e n s e l . ↑
2 D o b s o n (Cat. 1878, 227) sagt von V. abramus, dass er relativ einen
grösseren Penis habe als alle anderen Fledermäuse, J e n t i n k (Webers Zool.
Erg. I, 128 1890) führt ein j u n g e s Exemplar von Sumatra auf (Vorderarm nur
14.5 mm), dessen Penis 4.5 mm lang ist. ↑
3 Diese Maasse stimmen nicht genau mit denen der Abbildung Tafel IV, Figur 3,
da diese perspectivisch gezeichnet ist. ↑
[Inhalt]
Emballonuridae
Molossi

[Inhalt]

21. Nyctinomus sarasinorum n. sp.

Tafel IV Fig. 4–6, Tafel X Fig. 3, 4 und 28, und Tafel XI Fig. 2 und 2 a

N. brevipilosus, supra castaneus, subtus cinnamomeus; alis


fuscis; auriculis rotundatis, conjunctis; labris crassis, mediocriter
rugosis; alis medio tibiarum affixis; cauda ultra medium libera;
praemolari superiore unico, incisivis quatuor inferioribus anguste
insertis, mediis bifidis.
Long. tot. c. 100 mm, antibr. 40 mm. — Habitatio: Celébes.
fem.,a.in Spiritus, Batulappa, nördlich vom See von
Tempe, SW Central Celébes, VIII 95.

[17]

O b e r s e i t e kastanienbraun (Ridgw. IV, 9), sammetartig,


U n t e r s e i t e zimmetfarben (R. III, 20), die Haare mit helleren
Spitzen. F l u g h ä u t e bräunlich; dorsale Oberfläche:
Schulterflughaut spärlich mit kastanienbraunen Haaren besetzt,
Fingerflughaut mit ebensolchem Haarstreifen aussen am
Vorderarme, desgleichen ist die proximale Hälfte des Metacarpus
des 5. Fingers mit solchen Härchen besetzt, wie auch der
Aussenrand auf der Lendenflughaut und die proximale Hälfte der
Schenkelflughaut (alles dies jedoch deutlich nur am getrockneten
Exemplare sichtbar); ventrale Oberfläche so gut wie nackt, nur an
den Körperseiten setzt sich ein zimmetfarbener Haarsaum auf sie
fort. Die Lendenflughaut inserirt an der Mitte der Tibia, die
Schenkelflughaut am distalen Drittel des Sporns, sie ist, besonders
an der Unterseite, quer gefaltet. O h r e n median durch einen 4 mm
hohen, dorsal behaarten Hautwulst vereinigt; Innenrand des Ohres
stark convex, Spitze ganz abgerundet, Aussenrand oben ziemlich
gerade, unten convex, crus helicis lappig, breit, umgebogen, Tragus
sehr klein, oberer Rand convex, innerer concav, äusserer oben
convex, unten concav, mit einem Zacken; Antitragus etwas eckig,
durch einen tiefen Einschnitt hinten abgetrennt; Behaarung der
Ohrmuscheln schwach, dorsal fast nur an den proximalen Parthieen
behaart, ventral nackt bis auf einen kastanienbraunen Haarstreifen
an der dorsalen Fläche des crus helicis, von da quer nach oben und
hinten zur Ohrspitze ziehend. Die ganze Hautparthie hinter dem
Verbindungsbande der inneren Ohrränder (dorsale Fläche der
Ohrenbasis) bis zur Stirn so gut wie nackt, und zwar in einer
Ausdehnung von 6 mm von vorn nach hinten und von 11 mm in der
Quere, so dass die mediane, nach hinten offene, taschenförmige
Einsenkung offen liegt. S c h n a u z e mässig breit, stumpf, vorn
schräg nach hinten und unten abgeschnitten. Nasenlöcher mit
scharfem oberen Rande, der median nach vorn spitz
zusammenläuft, mit schwacher Einsenkung dazwischen. Die
borstigen Haare der Schnauze, besonders die ihrer Unterseite, an
der Spitze verbreitert 1. Oberlippe dick, vertical gerunzelt, aber nicht
so faltig wie bei N. plicatus (Buch, Ham.).

Bezahnung. Die beiden oberen Incisiven stehen etwas weiter


auseinander als bei N. plicatus (0.7 mm), es ist nur ein oberer
Praemolarzahn vorhanden, und er ist vom Caninus durch ein
Diastema getrennt, p 2 inf. ist nur ½–⅔ so gross wie p 1 inf., die zwei
mittleren unteren Incisiven sind zweilappig und stehen in der
Richtung des Kiefers, die zwei äusseren sind abgerundet und stehen
theilweise dahinter und quer.

Z i t z e n 5 mm unter der Achselhöhle.


Keine Kehlgrube (beim Weibchen!).

Maasse:

Kopf 25 mm
Körper 45
,,
Ohr 21 × 15
,,
Tragus (Länge von der Zacke an gemessen) 2 × 1.2
,,
Humerus 29
,,
Vorderarm 40
,,
Dig. 1 mit Kralle 8.5
,,
42
2 (40 + 2)
,, ,,
3 (39 + 18 + 15 + 7.5) 79.5
,, ,,
4 (37.5 + 14 + 10 + 1.7) 63.2
,, ,,
40.6
5 (23.5 + 11.5 + 4 + 1.6)
,, ,,
Femur 16
,,
Unterschenkel 14.5
,,
Fuss mit Krallen 13
,,
Sporn 8
,,
Schwanz (davon frei 23 mm) 34
,,

Auf Tafel IV Fig. 4 ist eine dorsale Ansicht des ganzen Thieres in
natürlicher, Fig. 5 die des Kopfes von der Seite in doppelter, Fig. 6
die des Tragus in vierfacher Grösse.

Nyctinomus sarasinorum schliesst sich zwar N. plicatus (Buch.


Ham.) an, allein ist doch wesentlich davon verschieden. Abgesehen
von den Dimensionen und der Färbung, in der Bezahnung, da
plicatus [18]2 obere Praemolaren hat, und die unteren Incisiven
anders gestellt und geformt sind, in dem Ansatze der
Lendenflughaut in der Mitte der Tibia, statt am unteren Ende wie bei
plicatus, in der Behaarung der Flügelhäute, die bei plicatus nackt
oder so gut wie nackt sind (wenigstens bei den mir vorliegenden
Exemplaren), in der partiellen Nacktheit der Kopfhaut, und in
Anderem.

Es könnte auffallend erscheinen, dass auf Celébes eine andere


Form des weit verbreiteten N. plicatus lebt, allein ich zweifle nicht,
dass bei näherem Eingehen auf ein genügend grosses Material von
vielen Fundorten verschiedene Rassen oder Subspecies
unterschieden werden können. D o b s o n (Cat. 1878, 425) gab die
Verbreitung von Vorderindien bis zu Bórneo und den Philippinen an,
P e t e r s & D o r i a (Ann. Mus. Gen. XVI, 35 1881) führten
Exemplare von Jobi, im Norden von Neu Guinea auf — es war dies
jedoch nicht der erste Molosside von Neu Guinea, wie diese Autoren
meinten, da schon N. australis (Gray) von Neu Guinea bekannt war
(Dobson Cat. 1878, 434) —, L e c h e (PZS. 1884, 51), solche von
Süd Australien und Nord Tasmanien, J e n t i n k endlich (Cat. MPB.
XII, 202 1888) ein junges von Timor. Mir liegen nur 3 Exemplare von
Jobi und je eines von Sumátra, Java und NW Australien vor, die von
Jobi und Australien sind dunkelbraun oben (R. III, 1), etwas heller
unten (R. III, 6), das von Sumátra ebenso, aber gesättigter, das von
Java wie die Jobi-Exemplare, unten jedoch mit weisslichen
Haarspitzen. B u c h a n a n (TLS. V, 161 1800) sagte von
Exemplaren von Bengalen: „The hair is mixed with a s h c o l o u r ,
and is paler below than on the back“; H o r s f i e l d (Zool. Res. Java
Nr. V 1824) von javanischen: „The body is d e e p b r o w n , inclining
to s o o t y b l a c k ; intense above, and grayish underneath“;
Te m m i n c k (Mon. Mam. I, 223 1827) von britischindischen: „Le
pelage est … d’un f a u v e c e n d r é “; C a n t o r (JASB. XV, 179
1846) von hinterindischen: „Back of a velvety s n u f f c o l o u r ,
becoming a shade lighter on the underparts“; B l y t h (l. c. XX, 517
1853) von britischindischen: „Nearly as d a r k - c o l o u r e d as the
Malayan race …, which, we think, differs not otherwise than in being
constantly of a much darker hue than the ordinary … plicatus of
India“; D o b s o n (Cat. 1878, 425) sagt ganz allgemein, was gewiss
nicht zutrifft: „Above b l a c k or s m o k e b l a c k , beneath
somewhat paler“; B l a n f o r d (Fauna Br. Ind. Mam. 1888–91) von
britischindischen Exemplaren: „Fur b r o w n i s h b l a c k to
g r e y i s h b r o w n above, sometimes the same but generally paler
below, basal portion of the hair lighter in colour“. Es liessen sich
diese Auszüge noch vermehren, ohne dass damit eine grössere
Übereinstimmung oder Klarheit erzielt würde, was den Gedanken
stützt, dass hier von verschiedenen Rassen die Rede ist, wie ja
B l y t h schon von einer constant dunkleren maleischen Rasse
sprach. Das Maass des Vorderarms giebt D o b s o n allgemein mit
49.5 mm (1.95 inch.) an, die mir vorliegenden Jobi-Exemplare
messen 45, das Exemplar von Java 46, das von Sumátra 42, das
von Australien 49 mm (gegen 40.5 bei N. sarasinorum von Celébes).

Interessante Mittheilungen über die massenhaften Flüge von N.


plicatus aus Höhlen in Barma machte kürzlich A. R. S. A n d e r s o n
in dem „Administration Report of the Marine Survey of India“ 1897/8
(nach einem Referat in Nat. Sc. XIV, 259 1899).

In Bezug auf die Bezahnung mit nur éinem oberen Praemolaren


gleicht N. sarasinorum den Arten der Untergattung Mormopterus
Ptrs. (PZS. 1865, 468) von Madagaskar, Südost Afrika etc., allein
sonst weicht er in den meisten in Frage kommenden Punkten von
ihnen ab. D o b s o n (Cat. 1878, 442) hat schon hervorgehoben,
dass man auf die Zahl der oberen Praemolaren hier keine
Untergattung gründen und N. norfolcensis (Gray) von der Norfolk
Insel und Australien [N. wilcoxi (Krefft)] mit 2 oberen Praemolaren
nicht von Mormopterus trennen könne (T h o m a s beschrieb Ann.
Mus. Gen. 1897, 609 N. loriae von S Neu-Guinea, der norfolcensis
nahe steht). Später hat P e t e r s selbst (Mb. Ak. Berl. 1881, 482)
das Fehlen von p 2 sup. als entscheidenden Charakter
zurückgezogen, aber zugleich Mormopterus zu einer Gattung
erhoben unter Namhaftmachung anderer Unterschiede und
Hinzuziehung einiger anderer Arten. Das Fehlen von p 2 sup. ist
eine Folge der Resorption des für ihn bestimmten Materiales seitens
der Nachbarzähne, c sup. und p 1 sup. (daher auch meist das
Diastema), ein Process, der sich bei manchen Arten einer Gattung
schon vollzogen hat, bei anderen noch nicht. Ein Vorstadium dazu ist
es, wenn p 2 sup. deciduös ist; D o b s o n (Cat. 1878, 431) erwähnt
dies bei N. mops (F. Cuv.) von Sumátra, und dasselbe kommt bei N.
plicatus vor, denn bei dem erwähnten Exemplare dieser Art von
Sumátra fehlt er. [19]

Anmerkung

Ich benutze diese Gelegenheit um eine Nyctinomus-Art von Neu


Guinea zu beschreiben:
Nyctinomus astrolabiensis n. sp.

Tafel X Fig. 19 und 30, und Tafel XI Fig. 6.

N. brevipilosus, brunneus (supra: Ridgway III, 11; subtus: III, 15;


alis: III, 18, obscure); capite depresso, rostro lato, labris
mediocriter rugosis; auriculis sejunctis, subtriangularibus,
margine anteriore recto, trago parvo, subquadrato, basi dilatato;
alis medio tibiarum affixis; caudae parte dimidia minore libera;
praemolari superiore secundo brevissimo, incisivis quatuor
inferioribus anguste insertis, bifidis.
Long. tot. c. 100 mm, antebr. 36 mm.
Habitatio: Sinus Astrolabiensis, Nova Guinea.
mas,a. in Spiritus, Bongu, Astrolabebai, Deutsch Neu
Guinea.

O b e r s e i t e proutbraun (R.), sammetartig, U n t e r s e i t e


broccolibraun (R.). F l u g h ä u t e bräunlich, nackt, auf der dorsalen
Oberfläche greifen die Haare nur an den Körperseiten über, auf der
ventralen ist ein Dreieck von der Mitte des Humerus bis zum Knie
behaart, in der Farbe ähnlich wie die Körperhaare der Unterseite,
auch greifen die Haare etwas auf die ventrale Oberfläche der
Schenkelflughaut über; 15 mm des Schwanzes frei, 19 in der
Flughaut, aber in ihrer Unterseite. Die Lendenflughaut inserirt
ziemlich in der Mitte der Tibia, die Schenkelflughaut an der Basis des
Sporns, ihr hinterer Rand ist etwas convex. O h r e n auf der
Schnauze 3 mm auseinander, 8 mm von der Schnauzenspitze
entfernt, innerer Rand ziemlich gerade, nur median etwas
eingezogen, Spitze abgerundet, äusserer Rand convex, Antitragus
nur durch eine schwache Einsenkung abgesetzt, 3 mm vom
Mundwinkel endend, crus helicis leistenartig, Tragus klein, fast
quadratisch, oben etwas abgerundet und ziemlich stark verdickt, die
Basis verbreitert. Ohrmuschel innen fast nackt, aussen an der Basis
etwa bis zur Hälfte ihrer Länge behaart. K o p f abgeplattet, von der
breiten S c h n a u z e nicht abgesetzt, diese ad maximum 12 mm
breit, vorn abgerundet und schräg nach hinten und unten
abgeschnitten, Oberlippe schwach gerunzelt, Nasenlöcher nach vorn
und aussen geöffnet, mit mässig scharfem oberen Wulste, der
median nach vorn spitz zusammenläuft, mit einer medianen
Einkerbung nach hinten und einem erhabenen Fortsatze nach unten.
Die Oberseite der Schnauze etwas warzig mit einzelnen, in
Vertiefungen stehenden längeren Haaren, ein Kranz von an ihrer
Spitze verbreiterten Haaren umsäumt die Schnauze unten, und auch
an ihren Seiten stehen solche vereinzelt 2.

B e z a h n u n g . Die beiden oberen Incisiven 1 mm auseinander, p 2


sup. sehr klein und durch ein relativ grosses Diastema von c
getrennt, p 1 sup. fast halb so gross wie c sup., p 2 inf. dicht an c inf.
und fast halb so gross, p 1 inf. etwas grösser als p 2 inf. Die zwei
mittleren Incisiven sind zweilappig und stehen in der Richtung des
Kiefers, die zwei äusseren nicht ganz so ausgesprochen zweilappig
und etwas dahinter, sowie etwas quer stehend.

Keine Kehlgrube.

Maasse:

Kopf 25 mm
Körper 41
,,
Ohr 15 × 16
,,
Tragus 2 × 1.6
,,
Humerus 26
,,
Vorderarm 36
,,
Dig. 1 mit Kralle 7
,,
2 33
,, ,,
3 (35 + 14 + 12.5 + 6) 67.5
,, ,,
54.5
4 (33 + 11 + 9 + 1.5)
,, ,,
35.5
5 (22 + 8 + 4 + 1.5)
,, ,,
Femur (?) 15
,,
Unterschenkel 13.5
,,
Fuss mit Krallen 9
,,
Sporn 11
,,
Schwanz (davon frei 15) 34
,,

H e l l e r (Abh. Ber. 1896/7 Nr. 8 p. 4) hatte das Exemplar für


Mormopterus beccarii Ptrs. (von Bongu) angesehen, der s. Z. von
Salawati beschrieben wurde (Mb. Ak. Berl. 1881, 484). N.
astrolabiensis steht keiner bekannten Art so nahe, dass eine
Differentialdiagnose zu geben wäre, gehört aber in D o b s o n s
Gruppe b (Cat. 1878, 421 und 422), der sich die Arten der
P e t e r s schen Gattung Mormopterus (Mb. 1881, 482) anschliessen.
[20]

You might also like