Home » Community » Newbie corner » error C2110: '+' : cannot add two pointers
error C2110: '+' : cannot add two pointers [message #30445] |
Sat, 01 January 2011 11:32 |
nlneilson
Messages: 644 Registered: January 2010 Location: U.S. California. Mojave &...
|
Contributor |
|
|
I ran into this and it took a couple hours to figure it out.
Here is a very simple example:
Ln0 = "ab" + "cd";
Where it actually came up was:
Ln0 = "clear64\n" + "gc," + Pt1 + "," + Pt2 + "\n";
This is C++, pointer addresses cannot be added.
This works:
Ln0 = "clear64\ngc," + Pt1 + "," + Pt2 + "\n";
The "," and "\n" are added OK when there is a String in between but
"," + "\n" will throw the error.
Quote: | The reason is because the system does not have a way to add a const char* and a string ("stuff" + string), but string has a way to add a string and a const char* (string + "stuff").
|
http://www.cplusplus.com/forum/beginner/6334/
Ln0 = Pt1 + ",";
This is OK, the String Pt1 has "," added.
If Pt1 is "pt" then Ln0 = "pt,"
Pt1 + "," + "a" gives an error.
Seems like this should give Ln0 = "pt,a"
A String and a const* char* "," is added OK.
Why can't another const* char* "a" be added to the string?
Is there a simple explanation.
|
|
|
Goto Forum:
Current Time: Thu May 09 00:44:30 CEST 2024
Total time taken to generate the page: 0.03222 seconds
|