Łączenie dwóch zmiennych liczbowych

0

Witajcie, jak połączyć dwie zmienne int ? Bo funkcja strcat nie działa :/ (c)

0

Chodzi mi o to, że mam dwie zmienne int, ex a=2; i b=3; i chcę aby zmienna c równała się 23.

Albo a=0; i b=3; czyli c = "03";

0

Co rozumiesz przez połączyć? Nic dziwnego, że nie działa skoro to jest string concatenation. Użyj sprintf jak już. Pytanie tylko po co Ci to?

0

Napisałem - mam dwie zmienne i chce je skleić, tak jakbym sklejał dwa wyrazy. Nie chcę dodać, tylko skleić i pytam jak to zrobić. Sprintfem jak ?

0

Nie wiem czy taka funkcja istnieje, ale może tak:

int polacz(int a,int b)
{
int out;
int temp=1;
while(temp<b) temp*=10;
temp*=10;
out = (temp*a) + b;
return out;
}

Trzeba pamiętać o zapętleniu zmiennych ! no ale przecież możesz konwersja na string -> połączyć -> konwersja na int.

0

@mto9 jak już to tak:

int join_int(int a, int b) {
  return a*pow(10, log10(b) + 1) + b;
}

@Marcinccc sprintfem to tak:

char* str = new char[static_cast<int>(log10(a) + log10(b)) + 3];
sprintf("%d%d", a, b);
0

Nie zadziała dla a=0;

0

Nie musi byc wynik jako int :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1