int k[3] = { 6, 8, 9};
void setup()
{
Serial.begin(115200);
function1( k);
function2( k);
function3( k);
function4( k);
function1( &k[0]);
function2( &k[0]);
function3( &k[0]);
// function4( &k[0]); // not possible, "by reference" should use the array
}
void loop()
{
}
void function1( int *a)
{
for( int i=0; i<3; i++)
{
Serial.print( a[i]);
Serial.print( ", ");
}
Serial.print( " sizeof=");
Serial.print( sizeof( a));
Serial.println();
}
void function2( int a[3])
{
for( int i=0; i<3; i++)
{
Serial.print( a[i]);
Serial.print( ", ");
}
Serial.print( " sizeof=");
Serial.print( sizeof( a));
Serial.println();
}
void function3( int a[])
{
for( int i=0; i<3; i++)
{
Serial.print( a[i]);
Serial.print( ", ");
}
Serial.print( " sizeof=");
Serial.print( sizeof( a));
Serial.println();
}
void function4( int (&a)[3])
{
for( auto x:a)
{
Serial.print( x);
Serial.print( ", ");
}
Serial.print( " sizeof=");
Serial.print( sizeof( a));
Serial.println();
}