unsigned long. Mit long verschwendest du wieder die Hälfte des Wertebereichs für negative Zahlen die du nicht hast.