Ich versuche mal die eigentliche Frage zu beantworten:

fork() erzeugt (vereinfacht) einen exakten Klon des Prozessimages, so auch der Filedeskriptoren, den damit assoziierten Puffern (der C-Bibliothek) etc. pp. printf() ist nichts anderes als ein fprintf in den STDOUT, printf() schreibt also in den Ausgabestream. Wird dieser nun nach dem printf() geklont, ist er in beiden Prozessen mit 'A' gefüllt.

Daher führt das Flushen des Ausgabestreams zum gewünschten Ergebnis. Ebenso könnte man noch vor dem printf einfach das Buffering abschalten, was den gleichen Effekt haben dürfte.

...zur Antwort

Genetische Untersuchungen von Pflanzen sind durchaus möglich - Gerade bei Weinreben hat man so ja teilweise die Herkunft und die Verwandschaft klären können.

Die Frage ist halt, ob es bereits entsprechende Genomdatenbanken für Prunus gibt und welche Labore dann so eine Untersuchung für einen Abgleich machen könnten.

Aber vielleicht könnte auch ein Pomologe helfen, zumindest um es einzugrenzen.

...zur Antwort

Die Nektarine (Prunus persica var. nucipersica) ist eine Mutation des Pfirsich (Prunus persica).

Familie solltest Du nicht sagen, denn aus botanischer Sicht gehören zu der gleichen Gattung auch Pflaumen, Mandeln und alles andere Steinobst - Zur Familie (Rosengewächse) gehört noch sehr viel mehr ;-).

...zur Antwort

Eine weitere Möglichkeit das umzusetzen ist wie folgt:

def getf(op):
   ops={'+': lambda x,y:x+y , '-' lambda x,y:x-y,
        ....}
   if op not in ops:
        raise .... # unbekannte Operation
   return ops[op]

def calc(op,x,y,):
    #ggf. Checks für Operanden einfügen.
    return getf(op)(x,y)

z1=int(input('Erste Ganzzahl eingeben:'))
z2=int(input('Zweite Ganzzahl eingeben:'))
op=input('Bitte Operation einmgeben:')
printf(f'Ergebnis: {calc(z1,z2,op}')

Würde man das dict mit den Lambdas in den globalen Kontext holen, dann könnte man aus den Keys die Operatorliste für die Eingabeaufforderung einfach generieren, anstatt das als fixen String zu machen:

op=input(f'Bitte Operation wählen ({','.join(ops.keys()}):')
...zur Antwort
Hallo, was würde passieren wenn Wolken plötzlich den Sonnenschein verdecken was zur Folge hat das die Netzfrequenz einbricht?

Für den unrealistischen Fall, daß 'plötzlich' ganz Deutschland von lichtundurchlässigen Wolken bedeckt würde und die Netzfrequenz trotz Regelleistung nicht stabilisiert werden kann, wird man wohl Lasten loswerden müssen.

...zur Antwort

Die Verbreitung des metrischen Systems ist stark mit der französischen Revolution verknüpft. GB ist eine Insel. Wurde dann eben nach Nordamerika exportiert.

In der Physik etc. nutzen sie sowieso SI und das metrische System, während die Briten in der EU waren, ist auch das metrische System deutlich stärker im alltäglichen Leben eingesickert.

Selbst in den USA wird im Alltag teilweise das metrische System verwendet. Nur kann man nem ollen Hunde keien neuen Tricks mehr beibringen - Wer mit einem System aufgewachsen ist und all seien Relationenvorstellung daran gebunden hat, dem fällt es schwer das umzulernen. Es ist ja nciht so, als hätte man die Einführugn nicht versucht: https://en.wikipedia.org/wiki/Metric_Conversion_Act

Übrigens, auch wir nutzen noch nicht metrische Größen, so ist es ja nicht ;-).

...zur Antwort

Erste Zeile, ein HEader wird nciht gefunden. Finde heraus, ob der HEader vorhandne ist, wenn ja, prüfe den Suchpfad des Compilers für Includes.

...zur Antwort

Welches andere Brenngas ist denn im notwendigen Umfang vorhanden und klimafreundlicher?

Davon ab braucht es für den Betrieb eines GuD auch Gase mit entsprechendem Enegiegehalt und hoher erreichbarer Brenntemperatur.

...zur Antwort

Bei Laufwasserkraftwerken: Diese zetrennen das FLießgewässer in zwei Teile - gibt es keien Aufstiegshilfe bleiben die beiden Räuem des Ober- udn Unterwassers getrennt.

Bei Speicherwasser kommt noch der Anstaubereich hinzu, der ganze Biotope flutet udn so nachhaltig zerstört. Die Frage ist dann halt, was stattdessen entsteht.

Was den Wassermnagel betrifft, das wird sich so pauschal nicht sagen lassen -Es wird im Zweifelsfall zu einer Verschiebung des Wasserhaushaltes kommen.

...zur Antwort

Ohne Pflege bringen viele Kultursorten deutlich kleinere Früchte hervor - Das sieht man ganz gut an verwilderten Kultursorten.

Sonst ist es eher so, daß die Fruchtmenge bei sinkender Vitalität abnimmt, nicht so sehr die Qualität - Ausnahmen bestätigen aber die Regel.

Wenn Du die Sorte so magst und es nicht um sowas sentimentales geht wie: Der Baum wurde zu meiner Geburt gepflanzt, dann laß ihn durch Veredelung vermehren und Du hast die Sorte weiterhin.

...zur Antwort

Da sortenechte Apfelbäume veredelt werden, hängt das MAximalalter primär von der Unterlage ab. Schwachsende Unterlagen haben früher Ertragsbeginn, die Bäume werden aber nicht sonderlich alt.

Bei einem klassischen Hochstamm, der auf eine entsprechend starkwüchsige Unterlage (ggf. Sämlingsunterlage) veredelt wurde, kann so ein Apfelbaum 100 Jahre aufwärts erreichen. Wenn nichts dazwischen kommt, sagt man bei Hochstämmen etwa 100-150 Jahre, es gibt aber auch Methusalems mit mehreren 100 Jahren.

...zur Antwort

Was in jedem Fall gehen sollte:

Blatt aus dem unteren Blattkranz ausbrechen bzw. rausschneiden, mit der Schnittkante in geeignetes Substrat setzen - nicht zu naß, damit es keine Fäulnis gibt.

Sempervivum sehen ähnlich aus, diese bekommen Kindrosetten, die man abtrennen und getrennt pflanzen kann - ob das bei der konkreten Art auch so ist, wird sich zeigen, meist muß die Pflanze dafür ein entsprechendes Alter erreichen.

...zur Antwort
Frage zu SysV Message Queues (Linux, C-Programmierung)?

Hallo,

2 Prozesse (einer Client, einer Server) sollen mittels SysV Message Queues miteinander kommunizieren.

Allerdings gibt mir printf() im Serverteil nach Erhalt der Message keinen Output.

Wisst ihr vielleicht woran es liegen könnte?

Vielen Dank

#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/wait.h>
#include <stdlib.h>
#include <sys/ipc.h>
#include <sys/msg.h>
#include <string.h>
#include <errno.h>

#define BUFLEN 256

struct msgbuffer
{
    long mtype;
    char mtext[BUFLEN];
};

int main()
{
    pid_t pid;
    key_t key;
    int msq_id;

    pid = fork();

    if (pid == 0) // Kind; Client
    {
        key = ftok("servername", 1);            // Key erzeugen
        msq_id = msgget(key, 0666);             // Msq ID

        // Nachricht anlegen
        struct msgbuffer msg;
        msg.mtype = 1;
        strcpy(&msg.mtext[0], "Das ist eine Nachricht!\n");

        // Nachricht senden
        if ((msgsnd(msq_id, &msg, BUFLEN, 0) == -1))
        {
            fprintf(stderr, "Fehler bei msgsnd(): %s\n", strerror(errno));
        }
    }

    if (pid != 0) // Elternteil; Server
    {
        key = ftok("servername", 1);            // Key erzeugen
        msq_id = msgget(key, 0666 | IPC_CREAT); // Msq ID

        // Nachrichtenbuffer erstellen
        struct msgbuffer msg;

        // Nachricht erhalten
        // wird supendiert, solange Queue leer
        if((msgrcv(msq_id, &msg, BUFLEN, 1, 0)) == -1)
        {
            fprintf(stderr, "Fehler bei msgrcv(): %s\n", strerror(errno));
        }

        // Nachricht ausgeben
        printf("%s", msg.mtext);
    }

    exit(EXIT_SUCCESS);
}
...zum Beitrag

Ich schaue mir das gleich nochmal genauer an, nur schonmal vorab, bitte prüfe die Rückgaben, schaue also ob msgsnd ein -1 zurückgibt, oder nicht.

...zur Antwort

Die Verschlüsse sollen ja dafür sorgen, daß die Teile in ihrer Position verbleiben. Weniger Verschlüsse bedeutet schlechtere Formhaltung bei größeren Kräften - je schneller eine Weiche befahrbar sein soll, umso mehr Verschlüsse brauchst Du, damit der Bereich (die Distanz) zwischen den Verschlüssen kürzer wird und besser in seiner Form bleibt.

Bei höheren Geschwindigkeiten brauchts dann in der Regel auch längere Zungen,also noch mehr Verschlüsse.

Exemplarisch:

https://upload.wikimedia.org/wikipedia/commons/f/fa/Weiche_Rohrbach.jpg

...zur Antwort