Main.cc: In function ‘int main()’: Main.cc:10:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(int i=0;i<=a.size()-1;i++){ ~^~~~~~~~~~~~ Main.cc:12:17: error: no matching function for call to ‘std::__cxx11::basic_string::insert(int&, char&)’ b=b.insert(i,p); ^ In file included from /usr/include/c++/7/string:52:0, from /usr/include/c++/7/bits/locale_classes.h:40, from /usr/include/c++/7/bits/ios_base.h:41, from /usr/include/c++/7/ios:42, from /usr/include/c++/7/istream:38, from /usr/include/c++/7/sstream:38, from /usr/include/c++/7/complex:45, from /usr/include/c++/7/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:52, from Main.cc:1: /usr/include/c++/7/bits/basic_string.h:1523:7: note: candidate: std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::insert(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::const_iterator, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type, _CharT) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator = __gnu_cxx::__normal_iterator >; typename __gnu_cxx::__alloc_traits::rebind<_CharT>::other>::pointer = char*; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::const_iterator = __gnu_cxx::__normal_iterator >; typename __gnu_cxx::__alloc_traits::rebind<_CharT>::other>::const_pointer = const char*; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type = long unsigned int] insert(const_iterator __p, size_type __n, _CharT __c) ^~~~~~ /usr/include/c++/7/bits/basic_string.h:1523:7: note: candidate expects 3 arguments, 2 provided /usr/include/c++/7/bits/basic_string.h:1567:9: note: candidate: template std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::insert(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::const_iterator, _InputIterator, _InputIterator) [with _InputIterator = _InputIterator; = ; _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator] insert(const_iterator __p, _InputIterator __beg, _InputIterator __end) ^~~~~~ /usr/include/c++/7/bits/basic_string.h:1567:9: note: template argument deduction/substitution failed: Main.cc:12:17: note: candidate expects 3 arguments, 2 provided b=b.insert(i,p); ^ In file included from /usr/include/c++/7/string:52:0, from /usr/include/c++/7/bits/locale_classes.h:40, from /usr/include/c++/7/bits/ios_base.h:41, from /usr/include/c++/7/ios:42, from /usr/include/c++/7/istream:38, from /usr/include/c++/7/sstream:38, from /usr/include/c++/7/complex:45, from /usr/include/c++/7/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:52, from Main.cc:1: /usr/include/c++/7/bits/basic_string.h:1601:7: note: candidate: void std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::insert(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator, std::initializer_list<_Tp>) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator = __gnu_cxx::__normal_iterator >; typename __gnu_cxx::__alloc_traits::rebind<_CharT>::other>::pointer = char*] insert(iterator __p, initializer_list<_CharT> __l) ^~~~~~ /usr/include/c++/7/bits/basic_string.h:1601:7: note: no known conversion for argument 1 from ‘int’ to ‘std::__cxx11::basic_string::iterator {aka __gnu_cxx::__normal_iterator >}’ /usr/include/c++/7/bits/basic_string.h:1621:7: note: candidate: std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::insert(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type, const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type = long unsigned int] insert(size_type __pos1, const basic_string& __str) ^~~~~~ /usr/include/c++/7/bits/basic_string.h:1621:7: note: no known conversion for argument 2 from ‘char’ to ‘const std::__cxx11::basic_string&’ /usr/include/c++/7/bits/basic_string.h:1644:7: note: candidate: std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::insert(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type, const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type = long unsigned int] insert(size_type __pos1, const basic_string& __str, ^~~~~~ /usr/include/c++/7/bits/basic_string.h:1644:7: note: candidate expects 4 arguments, 2 provided /usr/include/c++/7/bits/basic_string.h:1667:7: note: candidate: std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::insert(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type, const _CharT*, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type = long unsigned int] insert(size_type __pos, const _CharT* __s, size_type __n) ^~~~~~ /usr/include/c++/7/bits/basic_string.h:1667:7: note: candidate expects 3 arguments, 2 provided /usr/include/c++/7/bits/basic_string.h:1686:7: note: candidate: std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::insert(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type, const _CharT*) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type = long unsigned int] insert(size_type __pos, const _CharT* __s) ^~~~~~ /usr/include/c++/7/bits/basic_string.h:1686:7: note: conversion of argument 2 would be ill-formed: Main.cc:12:17: error: invalid conversion from ‘char’ to ‘const char*’ [-fpermissive] b=b.insert(i,p); ^ In file included from /usr/include/c++/7/string:52:0, from /usr/include/c++/7/bits/locale_classes.h:40, from /usr/include/c++/7/bits/ios_base.h:41, from /usr/include/c++/7/ios:42, from /usr/include/c++/7/istream:38, from /usr/include/c++/7/sstream:38, from /usr/include/c++/7/complex:45, from /usr/include/c++/7/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:52, from Main.cc:1: /usr/include/c++/7/bits/basic_string.h:1710:7: note: candidate: std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::insert(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type, _CharT) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type = long unsigned int] insert(size_type __pos, size_type __n, _CharT __c) ^~~~~~ /usr/include/c++/7/bits/basic_string.h:1710:7: note: candidate expects 3 arguments, 2 provided /usr/include/c++/7/bits/basic_string.h:1728:7: note: candidate: std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::insert(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator, _CharT) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator = __gnu_cxx::__normal_iterator >; typename __gnu_cxx::__alloc_traits::rebind<_CharT>::other>::pointer = char*; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator = __gnu_cxx::__normal_iterator >; typename __gnu_cxx::__alloc_traits::rebind<_CharT>::other>::const_pointer = const char*] insert(__const_iterator __p, _CharT __c) ^~~~~~ /usr/include/c++/7/bits/basic_string.h:1728:7: note: no known conversion for argument 1 from ‘int’ to ‘std::__cxx11::basic_string::__const_iterator {aka __gnu_cxx::__normal_iterator >}’ Main.cc:13:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(int j=0;j<=a.size()-1;j++){ ~^~~~~~~~~~~~