I am trying to convert a substring to integer but I am getting this output
int main()
{
char buf[50] = "210-567-12-2040-34567890.txt";
char* pStart = buf;
char* pCurrent = buf;
while(*pCurrent != '\0')
{
if (*pCurrent == '-' || *pCurrent == '.')
{
uint32_t val = strtoul(pStart, NULL, 10);
pStart = pCurrent+1;
printf("%ul\n",val);
}
++pCurrent;
}
return 0;
}
I am getting this output
210l
567l
12l
2040l
34567890l
Why is there a l
in it?