Was bedeutet char str ()?

Gast #3172095
Lesenswert?

In "C" wird vieles gesagt. In manchen Fällen geht es darum, dass 
überhaupt etwas "gesagt" wird.
Oder anders ausgedrückt: Das Gesagte hängt oft, muss aber nicht, 
zusammen.
Char str [ 40 ]; legt eine Variable für Zeichen mit einer maximalen 
Länge von 40 Zeichen an. Deren Name ist "str" - sehr einfallsreich. 
Diese wird möglicherweise an anderer Stelle benötigt.
Gast #3172117
Lesenswert?

#define LED1 0

void main(void)
{
    word Limit;
    word ADC_Wert;


    Port_DataDirBit(LED1,PORT_OUT);
    Port_WriteBit(LED1,PORT_OFF);
    ADC_Set(ADC_VREF_BG, ADC0);

  Limit=1000;

    while (1)
    {
        ADC_Wert=ADC_Read()*5/2;


        if (ADC_Wert<Limit)
        {
            Port_WriteBit(PORT_LED1,PORT_OFF);
        }
        else
        {
            Port_WriteBit(PORT_LED1,PORT_ON);
        }

        AbsDelay(1);
    }
}
#3172124
Lesenswert?

Alex Maier schrieb:
> Also das ist jetzt ohne char str[40]

Klasse. Großes Kino... Der Code liest also den ADC aus und setzt in 
Abhängigkeit eines eingestellten Limits eine LED, oder eben auch nicht. 
Warum fragst du, was dieser string macht, wenn dann in deinem 
Beispielcode dieser String nirgendwo auftaucht? Wie sollen wir deine 
Fragen beantworten, wenn du von uns erwartest, alles mit der Glaskugel 
zu erraten?
Gast #3172138
Lesenswert?

Troll? Falls nicht: Bitte, mach irgend ein beliebiges C-Tutorial durch 
und lern erstmal die Grundlagen der Sprache bevor du versuchst etwas zu 
programmieren. Deine Frage sollte sich nach 1-2 Tagen gemütlichen lernen 
von selbst beantworten.
Gast #3172148
Lesenswert?

Alex, man muss Dir hier, denke ich, eine Wahrheit sagen, die 
frustrierend für Dich sein wird.

Das ganze Thema "Programmieren" ist bei weitem komplizierter als Du Dir, 
wie ich das wahrnehme, im Moment vorstellen kannst. Es ist notwendig, 
das Du eine Reihe von Zusammenhängen lernst, ehe Du unsere Antworten 
überhaupt verstehen kannst. Das ist möglich. Kein Hexenwerk.
Aber das geht nicht in ein paar Minuten. Auch geht es nicht wenn man 
sich nur auf einen mikroskopischen Ausschnitt bezieht, wie Du es hier 
tust.

Lerne C. Hol Dir ein Buch, z.B. online von Galileo hier: 
http://openbook.galileocomputing.de/c_von_a_bis_z/
Wenn Du diese Arbeit nicht auf Dich nehmen willst, entscheide Dich so. 
Das
ist in Ordnung.

Aber bei Deinem Wissensstand läuft es darauf hinaus, das wir Deine 
Problem für Dich lösen. Dazu sind aus einer Reihe von Gründen kaum Leute 
bereit. Ich auch nicht.
Gast #3172155
Lesenswert?

>Weißt du zufällig, wo ich die c control pro lernen kann.

Lege erstmal die C-Control beiseite und lerne C am PC. Bei einem 
Mikrocontroller stellen sich eine Reihe Probleme die eigentlich nicht 
unmittelbar mit C selbst zu tun haben.

>Ich war schon mal in einem und habe nichts dazugelernt.
Ich nehme an, Du warst in einem Kurs. Richtig? Nun, versuche einmal zu 
analysieren, was für Dich nicht gepasst hat. Das ist einfach so. Jeder 
lernt anders. Aber wenn Du weiterkommen willst, musst Du Dich damit 
auseinandersetzen.
Gast #3172182
Lesenswert?

was verstehst du unter richtig? Ob der Syntax prinzipiell ok ist siehst 
du daran, dass es kompiliert. Ob es aber das macht was du möchtest, wird 
dir hier keiner beantworten können.

Wir wissen überhaupt nicht was dein Programm können soll!
Gast #3172212
Lesenswert?

Ok, dann sehe ich das so, dass Du schon eine Entwicklungsumgebung hast, 
mit der du schnell zu einem Erfolg kommen kannst.
Wie einige weiter oben schon bemerkt haben, solltest Du jetzt noch 
lernen, wofür diese einzelnen Zeilen Deines Programms stehen.

Das Programmieren von Robotern ist ein schönes Ziel.
Du wirst dahin nur gelangen, wenn du die Programmiersprache C 
beherrschst.
Es gibt viele kleine Teilziele, die Du Dir stecken kannst,
bis ein Roboter an die Reihe kommen wird.

Das wirst Du aber schaffen, das haben schon ganz andere Leute vor Dir 
geschafft.
Gast #3172216
Lesenswert?

@Alex
Noch ein Tipp.
Wenn Du nicht weist, was es mit einer Variablen oder auch mit einer 
Funktion auf sich hat: Suchen - wird eine normale Variable nicht 
verwendet, so ist sie oft überflüssig, natürlich nicht immer.
Überflüssige Variable entstehen entweder beim Kopieren und 
anschließendem, unvollständigen Löschen oder beim Probieren wenn der 
zugehörige Teil später verworfen wird.
Letzteres liegt vor allem daran, das Programmierer Konstanten und 
Variablen, aus Gründen der Übersichtlichkeit, am Anfang des Moduls (oft 
Datei) anlegen, die Funktionen aber viel weiter unten schreiben.
Dein Beispiel verwendet den A/D-Wandler, hier zum Schalten. 
Möglicherweise wird im nächsten Beispiel der Messwert ausgegeben. Hierzu 
wird ein Zwischenspeicher, für die Textdarstellung (lesbare Zeichen 
meist ASCII) benötigt. Str könnte dies sein.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren