Zum Inhalt springen

Vier Variablen in einem Array?


IT-Shrek

Empfohlene Beiträge

Hi,

Klotzkopp deine Variante funktioniert leider nicht.

Guybrush deine Version funktioniert, vielen dank dafür, allerdings meckert er nun jedes mal über "assignment makes integer from pointer without a cast" läuft ansonsten aber.

Kann ich das irgendwie verhindern?

Gibt es auch eine Möglichkeit in jede Array "Schublade" nur eine Binärziffer schreiben zu lassen und die nächste in [2], etc nur mit allen vier variablen hintereinander weg?

Shrek

Link zu diesem Kommentar
Auf anderen Seiten teilen

Klotzkopp deine Variante funktioniert leider nicht.

Guybrush deine Version funktioniert, vielen dank dafür, allerdings meckert er nun jedes mal über "assignment makes integer from pointer without a cast" läuft ansonsten aber.

Kann ich das irgendwie verhindern?

zeig mal bitte genau wie du das machst und wie du deine Variablen deklariert hast.

Gibt es auch eine Möglichkeit in jede Array "Schublade" nur eine Binärziffer schreiben zu lassen und die nächste in [2], etc nur mit allen vier variablen hintereinander weg?

Das hab ich jetzt nicht verstanden:floet:

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ist-Zustand mit Warning:


int binarray[32];                                                            

char smandbin1[25], smandbin2[25], smandbin3[25], smandbin4[25];

binarray[1]=smandbin1;

binarray[2]=smandbin2;

binarray[3]=smandbin3;

binarray[4]=smandbin4;

printf("\n%s.%s.%s.%s", binarray[1], binarray[2], binarray[3], binarray[4]);

ok also das habe ich vor:

V1=101

V2=110

a[1]=1

a[2]=0

a[3]=1

a[4]=1

a[5]=1

a[6]=0

Thx, Shrek

Link zu diesem Kommentar
Auf anderen Seiten teilen

Jetzt auf Anhieb würd ichs so machen:


#define ANZAHL 4

CString str1 = "";

CString str2 = "";


str1.Format(V1);

str2.Format(V2);

str1 += str2;


int anV[ANZAHL];

int i = 0;


while (i < (ANZAHL-1))

{

        if((str1[i]>='0') && (str1[i]<='9'))

            anV[i] = atoi(str1[i]);

        i++;

}

Geht sicher auch einfacher... naja

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ist-Zustand mit Warning:


int binarray[32];                                                            

char smandbin1[25], smandbin2[25], smandbin3[25], smandbin4[25];

binarray[1]=smandbin1;

binarray[2]=smandbin2;

binarray[3]=smandbin3;

binarray[4]=smandbin4;

printf("\n%s.%s.%s.%s", binarray[1], binarray[2], binarray[3], binarray[4]);

ok also das habe ich vor:

V1=101

V2=110

a[1]=1

a[2]=0

a[3]=1

a[4]=1

a[5]=1

a[6]=0

Thx, Shrek

Moment das ist aber was anderes als du oben geschrieben hast. Du hast also 4 Binärzahlen aus der du eine große machen willst? Dann solltest du einen char Array anlegen das groß genug für alle Binärzahlen ist und dieses dann mit strcpy und strcat füllen. Wenns auch C++ sein darf würde ich std::string benutzen.

Was du da im Moment machst ist


binarray[1]=smandbin1;
[/PHP]

binaary[1] die Startadresse von smandbin1 im Speicher zuzuweisen.

[PHP]
printf("\n%s", binarray[1]);

printf erwartet hier wegen dem %s die Startadresse eines C-Strings welche du ja dann mit binarray[1] übergibst. Das ist also (meiner Meinung nach zumindest) nicht das was du wolltest ;)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Klotzkopp deine Variante funktioniert leider nicht.
Lies meine Signatur. :rolleyes:

Und wenn deine Variablen wirklich Integer gewesen wären - wie du behauptet hast -, und keine char-Arrays, hätte es funktioniert.

Dein Problem ist, wie sich jetzt herausstellt, auch nicht, diese Dinger in ein Array zu schreiben.

Das kommt dabei raus, wenn man nicht das Problem beschreibt, sondern das, was man für die Lösung hält. Viel Zeit nutzlos vertan, auch die der freiwilligen Helfer.

Beschreibe bitte ganz genau die Eingabedaten, und was genau hinterher dabei rauskommen soll. Was willst du nachher mit den Daten machen?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...