Grüß Gott alle miteinand' ich habe eine kurze Frage bei der ich im dunkeln Tappe weil keiner der Tutoren für C im Netz was drüber weiss. Folgendes: - Ich habe eine sehr lange printf anweisung die sieht so aus : printf("AIN[%d][%d] = %u.%.3u V\n",m,n,(int)(AD_ARRAY[m][n]/V_SCALE),(int)(AD_ARRAY[m][n]%V_SCALE)*R_S CALE); Könnte ich jetzt die irgendwie auf mehrere Zeilen verteilen damit das besser aussieht aber ohne das ich zuzüglich mehrere printf's schreibe ?? Danke für die Hilfe (im Vorraus)
Soweit ich weiß ist es egal solange kein ";" mittendrin erfolgt kannst du es trennen und auch untereinander schreiben. printf("AIN[%d][%d] = %u.%.3u V\n",m,n,(int) (AD_ARRAY[m][n]/V_SCALE), (int)(AD_ARRAY[m][n]%V_SCALE)*R_SCALE); Einfach mal ausprobieren ist schon ne weile her bei mir g0nz00
1 | printf("%i, %d, %f", |
2 | 5, |
3 | 7, |
4 | 6.7); |
Sowas funktioniert bei mir jedenfalls. Also: einfach nur NewLines einbauen wo du willst.
1 | printf("AIN"); |
2 | printf("[%d]",m); |
3 | printf("[%d]",n); |
4 | printf(" = "); |
5 | printf("%u.",(int)(AD_ARRAY[m][n]/V_SCALE)); |
6 | printf("%.3u",(int)(AD_ARRAY[m][n]%V_SCALE)*R_SCALE); |
7 | printf(" V\n"); |
Ähm richtig lesen, Stefan, genau so soll es nicht sein!
1 | printf("AIN[%d][%d] = %u.%.3u V\n", |
2 | m, |
3 | n, |
4 | (int)(AD_ARRAY[m][n]/V_SCALE), |
5 | (int)(AD_ARRAY[m][n]%V_SCALE)*R_SCALE |
6 | );
|
Man kann sogar Strinkonstanten über mehrere Zeilen verteilen: printf("abc %d " "def%c", 15, 'g'); ergibt dasselbe wie printf("abc %d def%c", 15, 'g');
Stefan wrote:
> Ähm richtig lesen, Stefan, genau so soll es nicht sein!
Selbstgespräche? ;)
falsch, richtig geht es so
1 | printf("Das Feld 1 lautet %d \n" |
2 | "Das Feld 2 lautet %d \n" |
3 | "Das Feld 3 lautet %d \n", Testarray[0], Testarray[1], Testarray[2]); |
und ja, es ist mir egal wie alt dioese Beitrag ist! auch andere Anfänger werden auf diesen threat treffen!
Ramon schrieb: > auch andere Anfänger > werden auf diesen threat treffen! Von welcher Bedrohung sprichst du?
Und was genau ist Ramon schrieb: > falsch ? Bis auf die erste Antwort scheinen mir alle korrekt zu sein. Es ist wenig hilfreich, da einfach pauschal mit einem Ramon schrieb: > falsch zu antworten und dann was hinzuschreiben, das sich von den Vorschlägen davor im Prinzip nicht unterscheidet.
:
Bearbeitet durch User
jede Zeile muss mit " oder \ beendet werden. Bei dem Beispiel
1 | printf("abc %d " |
2 | "def%c", |
3 | 15, |
4 | 'g'); |
ist das aber nicht der Fall...das komma hinter dem ", ist falsch..zumindest funktioniert es bei zwei meiner Compiler so nicht und in den Büchern die ich hier habe steht ebenfalls " oder \ am Ende keinesfalls.., oder einach einen Zeilenumbruch
Ramon schrieb: > jede Zeile muss mit " oder \ beendet werden. > Bei dem Beispiel > printf("abc %d " > "def%c", > 15, > 'g'); > > ist das aber nicht der Fall...das komma hinter dem ", ist > falsch..zumindest funktioniert es bei zwei meiner Compiler so nicht und > in den Büchern die ich hier habe steht ebenfalls " oder \ am Ende > keinesfalls.., oder einach einen Zeilenumbruch So ein Unsinn. Was du sagst gilt nur innerhalb von Zeichenketten-Tokens. In den Beispielen wird die Zeile jedoch zwischen den Tokens umgebrochen, und das ist völlig legal. Lies noch mal 5.1.1.2, "Translation phases", in http://www.open-std.org/JTC1/SC22/WG14/www/docs/n1256.pdf etwas genauer. Nach Schritt 7 sind alle new-lines verschwunden und die Tokens separiert. LG, Sebastian
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.