Moin Bin neu in Programmieren. Ich habe mir vorhin eine Matrix mit "0" erstellt in C. Jetzt hatte ich den Gedanken statt der 0 ein Zeichen zu setzen z.B. ein "+". Irgendwie hab ich das nicht hinbekommen und bitte deshalb um Unterstützung ! Hier mein Code für eine Matrix die mit "0" gefüllt ist(der klappt auch): #include <stdio.h> int main() { char i; char j; char z=4; char matrix [4][4]={0}; for (i=0;i<z;i++){ printf("\n"); for (j=0;j<z;j++){ printf("%i",matrix[i][j]); } } return 0; { } } Und hier mein Ansatz für die Matrix mit + #include <stdio.h> int main() { char i; char j; char z=4; char matrix [4][4]={"+"}; for (i="+";i<z;i++){ printf("\n"); for (j="+";j<z;j++){ printf("%c",matrix[i][j]); } } return 0; { } }
Taw U. schrieb: > Irgendwie hab ich das nicht hinbekommen Und wie äußert sich das? Bist du sicher, dass dein Füllversuch mit 0 geklappt hat und du nicht nur die Initialisierung durch den Compiler gesehen hast? Probiers mal mit 1 ;-)
Wichtige Regeln - erst lesen, dann posten! Groß- und Kleinschreibung verwenden Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang Formatierung (mehr Informationen...) [ c]C-Code[ /c]
Das funktioniert mit der 0 nur zufällig, du gibt dabei nämlich nur ein char vor, aber die Matrix umfasst 16 chars. "+" ist eine Zeichenkette bestehend aus zwei chars, nämlich '+' und '\0'. Achte auf einfache versus doppelte Anführungsstriche! So geht es:
1 | #include <stdio.h> |
2 | int main() |
3 | {
|
4 | char i; |
5 | char j; |
6 | char z=4; |
7 | char matrix [4][4]={{'+','+','+','+'},{'+','+','+','+'},{'+','+','+','+'},{'+','+','+','+'}}; |
8 | |
9 | for (i=0;i<z;i++) |
10 | {
|
11 | printf("\n"); |
12 | for (j=0;j<z;j++) |
13 | {
|
14 | printf("%c",matrix[i][j]); |
15 | }
|
16 | }
|
17 | return 0; |
18 | }
|
Stefan ⛄ F. schrieb: > "+" ist eine Zeichenkette bestehend aus zwei chars Genauer gesagt deren Adresse.
Nop schrieb: > Stefan ⛄ F. schrieb: > >> "+" ist eine Zeichenkette bestehend aus zwei chars > > Genauer gesagt deren Adresse. Nein!
(prx) A. K. schrieb: > Beides, je nach Kontext. Je nach Kontext wird es in einen Pointer konvertiert, der auf das erste Element zeigt. Das hier ist einer der Fälle wo nicht konvertiert wird. Wenn man schon Nop schrieb: > Genauer gesagt schreibt, sollte man es auch richtig sagen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.