millis in Array

Gast #3937398
Lesenswert?

Hier ein Beispiel:
1
unsigned long myArray[10];
1
myArray[0] = millis();
2
// mach hier was, das etwas länger geht ...
3
myArray[1] = millis();
4
// mach hier was, das etwas länger geht ...
5
myArray[2] = millis();
6
// mach hier was, das etwas länger geht ...
7
myArray[3] = millis();
Gast #3937449
Lesenswert?

1
/* sprintf example */
2
#include <stdio.h>
3

4
int main ()
5
{
6
  char buffer [50];
7
  int n, a=5, b=3;
8
  n=sprintf (buffer, "%d plus %d is %d", a, b, a+b);
9
  printf ("[%s] is a string %d chars long\n",buffer,n);
10
  return 0;
11
}


1
Output:
2
[5 plus 3 is 8] is a string 13 chars long


Ist es richtig das n die Anzahl der Zeichen beinhaltet und das Array 
buffer den umgewandelten String?

Was bedeutet "%d plus %d is %d" ? Für was steht %d & %s?
Gast #3937456
Lesenswert?

>Ist es richtig das n die Anzahl der Zeichen beinhaltet und das Array
>buffer den umgewandelten String?
Ja. Und Du musst buffer so groß wählen, dass später alle Zeichen rein 
passen. Im Beispiel: 50 Zeichen.
&d ist ein Platzhalter für Ganzzahlen. Hier kommt später das "a", das 
"b" und das "a+b" rein.
%s ist ein Platzhalter für einen String
gibt auch noch
%f Platzhalter für Float.
und weitere.

Wichtig, da millis() ein unsigned long(32bit) liefert, %d aber nur ein 
Platzhalter für int (16bit) ist: Du musst das casten.

Sieht bei Dir dann etwa so aus:
1
char buffer [50];
2
unsigned long zeit;
3
zeit = millis();
4
sprintf (buffer, "Die Zeit in Mllisekunden war: %d", (int)zeit);

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