Moin Leutz,
ich bin hier gerade an der Hausübung 5.1a wo wir die Funktion int myAtoi(constant char *str) aus implementieren sollen. Die Übergabe an die Funktion funktioniert soweit und bekomme auch die Werte die ich erwarte wenn ich sie ausgebe.
Um nun aber mit dem Array weiter arbeiten zu können, müsste ich die Größe des übergebenen Arrays wissen. In Internetrecherchen habe ich bereits raus gefunden dass man das über die sizeof-Funktion raus bekommen kann. Wende ich die Funktion in der main-Methode an, gibt mir die Funktion auch immer den richtigen Werte aus. Wende ich sizeof jedoch in der myAtoi Methode an kommt immer eine 4 raus, egal wie groß das Array dimensioniert ist.
Meine Vermutung ist bereits dass das damit zusammenhängt das es sich beim Array um einen Pointer handelt der an die Methode übergeben wird. Ich würde ja die Größe des Arrays einfach in der main-Methode ermitteln und an die myAtoi-Methode übergeben, aber wenn ich die Aufgabenstellung richtig lese ist das nicht gewünscht das der Funktionsheader verändert wird.
Kann mir jemand sagen wie ich die Länge des Arrays auch nach der Übergabe in die Methode ausfinden kann?
mfg Johannes
H5.1 Arraygröße
Re: H5.1 Arraygröße
Vorlesung 9, Folien 7, 8 und 9jroerig hat geschrieben: Wende ich sizeof jedoch in der myAtoi Methode an kommt immer eine 4 raus, egal wie groß das Array dimensioniert ist.
Meine Vermutung ist bereits dass das damit zusammenhängt das es sich beim Array um einen Pointer handelt der an die Methode übergeben wird.
C-Strings sind null-terminiert.jroerig hat geschrieben: Kann mir jemand sagen wie ich die Länge des Arrays auch nach der Übergabe in die Methode ausfinden kann?
Wenn das nicht hilft, dann alternativ Vorlesung 8, Folie 29
Gehe zu Forum
- Allgemeines
- ↳ Neuigkeiten
- ↳ Ankündigungen
- ↳ Studienberatung
- ↳ Aktive Fachschaft
- ↳ Allgemein
- ↳ Forumsanregungen
- ↳ Inforz
- ↳ Das Wesentliche
- ↳ Vor dem Studium
- ↳ Studieninteressierte
- ↳ Vorkurs
- ↳ Archiv
- ↳ Ophase
- ↳ Archiv
- ↳ Studium
- ↳ Allgemein
- ↳ Ausland
- ↳ Bachelorpraktikum
- ↳ Archiv
- ↳ RBG/Rechner
- ↳ Studienorganisation
- ↳ Teilzeitstudium
- ↳ Angebote
- ↳ Abschlussarbeiten
- ↳ Jobs
- ↳ Umfragen
- ↳ Veranstaltungen
- ↳ Sonstiges
- ↳ GnoM
- ↳ RPGnoM
- ↳ Offtopic
- ↳ TU Darmstadt Programming-Contest
- ↳ CrypTool
- ↳ Suche / Biete
- ↳ Archiv
- Pflichtveranstaltungen
- ↳ Grundstudium
- ↳ Aussagen- und Prädikatenlogik
- ↳ Archiv
- ↳ Algorithmen und Datenstrukturen
- ↳ AuD: Vorlesung
- ↳ Archiv
- ↳ AuD: Theoretische Aufgaben
- ↳ Archiv
- ↳ AuD: Arbeit mit Nabla
- ↳ Archiv
- ↳ AuD: Programmieraufgaben
- ↳ Archiv
- ↳ AuD: Rund um die Klausur
- ↳ Archiv
- ↳ Automaten, formale Sprachen und Entscheidbarkeit
- ↳ Archiv
- ↳ Betriebssysteme
- ↳ Archiv
- ↳ Digitaltechnik
- ↳ Archiv
- ↳ Einführung in den Compilerbau
- ↳ Archiv
- ↳ Funktionale und Objektorientierte Programmierkonzepte
- ↳ Archiv
- ↳ GdI 1: Vorlesung
- ↳ Archiv
- ↳ GdI 1: Übung
- ↳ Archiv
- ↳ GdI 1: Praktikum
- ↳ Archiv
- ↳ Mathematik für Informatik 1
- ↳ Archiv
- ↳ Mathematik für Informatik 2
- ↳ Archiv
- ↳ Mathematik für Informatik 3
- ↳ Archiv
- ↳ Rechnerorganisation
- ↳ Archiv
- ↳ Systemnahe und parallele Programmierung
- ↳ Archiv
- ↳ Weiterführende Pflichtveranstaltungen
- ↳ Architekturen und Entwurf von Rechnersystemen
- ↳ Archiv
- ↳ Computational Engineering und Robotik
- ↳ Archiv
- ↳ Computer-Netzwerke und verteilte Systeme
- ↳ Archiv
- ↳ Computersystemsicherheit
- ↳ Archiv
- ↳ Informationsmanagement
- ↳ Archiv
- ↳ Modellierung, Spezifikation und Semantik
- ↳ Archiv
- ↳ Software Engineering
- ↳ Archiv
- ↳ Visual Computing
- ↳ Archiv
- ↳ Nicht mehr angeboten
- ↳ FGdI 3
- ↳ Archiv
- ↳ GdI 3
- ↳ GdI 3: Vorlesung
- ↳ Archiv
- ↳ GdI 3: Übung
- ↳ Archiv
- ↳ GdI 3: Praktikum
- ↳ Archiv
- ↳ TGdI
- ↳ Archiv
- ↳ TGdI 1
- ↳ Archiv
- ↳ TGdI 2
- ↳ Archiv
- Wahlbereich
- ↳ IT-Sicherheit
- ↳ Einführung in die Kryptographie
- ↳ Archiv
- ↳ Elektronische Wahlen
- ↳ Embedded System Security
- ↳ Formal Methods for Information Security
- ↳ Archiv
- ↳ Forschungskurs "Angewandte Kryptographie"
- ↳ IT-Sicherheit
- ↳ Archiv
- ↳ IT-Sicherheits-Management
- ↳ Kryptographische Protokolle
- ↳ Multimedia Security
- ↳ Netzsicherheit
- ↳ Operating Systems
- ↳ Archiv
- ↳ Operating Systems II: Dependability and Trust
- ↳ Archiv
- ↳ Post-Quantum Cryptography
- ↳ Praktikum: CAPTCHAs
- ↳ Praktikum: Kryptographie
- ↳ Praktikum: Sichere Informationssysteme
- ↳ Praktikum: Smartphone-Sicherheit für Android Applikationen
- ↳ Praktikum in der Lehre: Informatik Ferienworkshop
- ↳ Privacy Enhancing Technologies
- ↳ Public Key Infrastrukturen
- ↳ Archiv
- ↳ Public Key Kryptoanalyse
- ↳ Archiv
- ↳ Quantenalgorithmen
- ↳ Secure, Trusted and Trustworthy Computing, Teil 1
- ↳ Seminar: PhD Seminar ITS
- ↳ Seminar: Post Quantum Kryptographie
- ↳ Seminar: Sicherheit in Car2Car-Kommunikation
- ↳ Seminar: Usable Security
- ↳ Verfahren zur automatischen Verifikation
- ↳ Netze und Verteilte Systeme
- ↳ Kommunikationsnetze 1
- ↳ Kommunikationsnetze 2
- ↳ Kommunikationsnetze 3: Mobilität in Netzen
- ↳ Archiv
- ↳ Peer-to-Peer und Grid Computing
- ↳ Archiv
- ↳ Peer-to-Peer II - Methods
- ↳ Archiv
- ↳ Praktikum: Internet
- ↳ Praktikum: Kommunikation in Peer-to-Peer-Netzen
- ↳ Praktikum: Peer-to-Peer-Middleware
- ↳ TK1: Rechnernetze, Verteilte Systeme und Algorithmen
- ↳ Archiv
- ↳ TK2: Web Engineering, Web Cooperation und E-Learning
- ↳ TK3: Ubiquitous / Mobile Computing
- ↳ Ubiquitous Computing in Geschäftsprozessen
- ↳ Robotik, Computational und Computer Engineering
- ↳ Algorithmen im Chip-Entwurf
- ↳ Archiv
- ↳ Compiler 1
- ↳ Archiv
- ↳ Compiler 2
- ↳ Archiv
- ↳ Echtzeitsysteme
- ↳ Eingebettete Systeme 1
- ↳ Eingebettete Systeme 2
- ↳ Geometrische Methoden des CAD/CAE
- ↳ Grundlagen der Robotik
- ↳ Hardwaremodellierungssprachen
- ↳ Lernende Roboter
- ↳ Mainframe Technologie
- ↳ Optimierende Compiler
- ↳ Archiv
- ↳ Optimierung statischer und dynamischer Systeme
- ↳ Archiv
- ↳ Praktikum: Adaptive Computersysteme
- ↳ Praktikum: Embedded Systems Hands-On 1
- ↳ Prozessorarchitekturen für rechenstarke eingebettete Systeme
- ↳ Archiv
- ↳ Rekonfigurierbare Prozessoren
- ↳ Seminar: Dynamisch und partiell rekonfigurierbare Architekturen
- ↳ Software-Systeme und formale Grundlagen
- ↳ Algorithmische Modellierung
- ↳ Applied Static Analysis
- ↳ Automated Code Analysis for Large Software Systems
- ↳ Automated Software Engineering
- ↳ Automated Theorem Proving
- ↳ Berechenbarkeitstheorie
- ↳ Archiv
- ↳ Concepts and Technologies for Distributed Systems and Big Data Processing
- ↳ Archiv
- ↳ Design and Implementation of Modern Programming Languages
- ↳ Designing code analyses for large software systems (DECA)
- ↳ Effiziente Graphenalgorithmen
- ↳ Enterprise Application Design
- ↳ Archiv
- ↳ Grundlagen des KI Planens
- ↳ Implementing code analyses for large software systems (ICA)
- ↳ Konzepte der Programmiersprachen
- ↳ Archiv
- ↳ Modellierungspraktikum
- ↳ Optimierungsalgorithmen
- ↳ Praktikum: Algorithmen
- ↳ Praktikum: Proof-Carrying-Code
- ↳ Archiv
- ↳ Programmanalyse und Transformation
- ↳ Secure Coding Lab
- ↳ Secure Software Development (SecDev)
- ↳ Seminar: Current Topics in Information Flow Security
- ↳ Seminar: Current Topics in Usage Control
- ↳ Seminar: Formale Spezifikation
- ↳ Seminar: Proof-Carrying-Code
- ↳ Archiv
- ↳ Seminar: Reading Group Runtime Monitoring
- ↳ Seminar: Reliable Security for Concurrent Programs
- ↳ Seminar: Softwaresystemtechnologien
- ↳ Software Engineering - Design and Construction
- ↳ Archiv
- ↳ Software Engineering - Projekt
- ↳ Archiv
- ↳ Software Engineering - Projektmanagement
- ↳ Software Engineering - Requirements
- ↳ Software Engineering - Wartung und Qualitätssicherung
- ↳ Archiv
- ↳ Software Engineering in industrial practice
- ↳ Archiv
- ↳ Static and Dynamic Program Analysis
- ↳ Archiv
- ↳ Technikgestaltung
- ↳ Type Systems of Programming Languages
- ↳ Web Services Technologien: Einführung, Komposition und Erweiterungen
- ↳ Visual & Interactive Computing
- ↳ Advanced Programming Techniques in Computer Vision
- ↳ Bildverarbeitung
- ↳ Capturing Reality
- ↳ Computer Vision
- ↳ Computer Vision 2
- ↳ Context-Awareness
- ↳ Einführung in die Computermusik
- ↳ Game Technology
- ↳ Archiv
- ↳ Geometric Algebra Computing
- ↳ Archiv
- ↳ Graphische Datenverarbeitung 1
- ↳ Archiv
- ↳ Graphische Datenverarbeitung 2
- ↳ Archiv
- ↳ Graphische Informationssysteme
- ↳ Informationsvisualisierung und Visual Analytics
- ↳ IT-Management und IT-Einsatz
- ↳ Probabilistische Graphische Modelle
- ↳ Programming Massively Parallel Processors
- ↳ Archiv
- ↳ Seminar: Probleme in Computergraphik und Computer Vision
- ↳ Statistisches Maschinelles Lernen
- ↳ Serious Games
- ↳ Archiv
- ↳ Virtual and Augmented Reality
- ↳ Archiv
- ↳ Web, Wissens- und Informationsverarbeitung
- ↳ Algorithms of Language Technology
- ↳ Business Intelligence and Data Warehousing
- ↳ Datenbanken 2
- ↳ Data Mining und Maschinelles Lernen
- ↳ Archiv
- ↳ Digitale Spiele / Digital Games
- ↳ Einführung in die Künstliche Intelligenz
- ↳ Innovative Operating System Elements
- ↳ Middleware
- ↳ Natural Language Processing and the Web
- ↳ Praktikum: Data-Mining
- ↳ Praktikum: Künstliche Intelligenz
- ↳ Praktikum: Question Answering Technologies Behind IBM Watson
- ↳ Semantic Web
- ↳ Seminar: Deep Learning for NLP and Speech
- ↳ Seminar: Knowledge Management in Web 2.0
- ↳ Web Mining
- ↳ Fachübergreifender Anteil
- ↳ Einführung in wissenschaftliches Arbeiten
- ↳ Archiv
- ↳ Nicht mehr angeboten
- ↳ Digital Storytelling
- ↳ Graphische Datenverarbeitung 3
- ↳ Archiv
- ↳ Grundlagen der Rechnertechnologie
- ↳ Grundlagen des CAE/CAD 2
- ↳ Mobile sichere Systeme
- ↳ Netzwerksicherheit
- ↳ Praktikum: Spielerische Edutainment-Anwendungen / Game Technology
- ↳ Archiv
- ↳ Rechnerarchitektur
- ↳ Rechnerentwurf und Mikroprogrammierung
- ↳ Archiv
- ↳ Robotik 0: Mobile und sensorgeführte Robotiksysteme
- ↳ Robotik 1: Grundlagen
- ↳ Archiv
- ↳ Robotik 2: Mobilität und Autonomie
- ↳ Archiv
- ↳ Seminar: Rechnerarchitektur
- ↳ Systementwurf mit Mikroprozessoren
- ↳ Archiv
- ↳ Seminar: Digital Storytelling
- ↳ Archiv
- Masterstudium
- ↳ Neben- und Anwendungsfächer
- ↳ Archiv
- ↳ Spezialisierungsmaster
- ↳ Abschlussarbeiten
- ↳ Studienorganisation
- Serviceveranstaltungen
- ↳ AI 1
- ↳ Archiv
- ↳ AI 2
- ↳ Archiv
- ↳ AI 3
- ↳ Archiv