Создал прототип функции с параметром передающимся по значению типа unsigned long,
но описывал функцию с параметром просто long.
Когда вызывал передавал туда тип unsigned long.
Компилятор не выдал ошибку, а только предупреждение, поэтому я не обратил внимание. И теперь думаю, могла моя прога глючить из-за этого? Или где узнать, как воспринимает эту ситуацию машина?
Привожу фрагменты описываемого кода:
// файл 1.h
// какой-то код...
void fAddInActionInRecordMode(actions Action, long param = 0);
void fSendState(StadyWork WorkSt, actions Action, unsigned long param = 0);
// файл main.ino
#include "1.h"
// далее какой-то код
void fSendState(StadyWork WorkSt, actions Action, long param)
{
String Str1;
if ((WorkSt == StPlay))
{
Str1 = "K43";
}
}
// вызов функции из другой функции
void fAddInActionInRecordMode(actions Action, long param)
{
if (stWork == StRec)
{
Actions = Action;
fSendState(stWork, Actions, param);
}
}