с определенным порядком выборки:
char qwe[] = {1,2,3};
char *vals_temp_p = qwe;
unsigned char* sygnal_base_put( unsigned char* x, unsigned char n ){
char a;
if( n-- ) { //Якобы работа с Вашим "вторым аргументом".
x = sygnal_base_put( x, n );
//.... a = *x; (a = 2)
x++; // ... и постинкремент второго аргумента.
}
else { //Якобы работа с Вашим "первым аргументом".
//.... a = *x; (a = 1)
x++; // постинкремент "первого аргумента"
}
return x;
}
int main( void ) { vals_temp_p = sygnal_base_put( vals_temp_p, 1 );}