我是C++的初学者.我的理解是: -
i ++首先执行,然后递增,++ i先递增,然后执行,i + = 1递增1,然后执行.但是在FOR循环中:
for (i=0;i<10;i++)
for (i=0;i<10;++i)
Run Code Online (Sandbox Code Playgroud)
上面这两个循环确实没有区别.
这是另一个计算从1到100的所有整数的总和:
int i=1, sum=0;
while (i<=100)
{
sum+=i;
i++; //i+=1; ++i;
}
cout<<sum<<" "<<i<<endl;
return 0;
Run Code Online (Sandbox Code Playgroud)
但是如果我用i + = 1或++ i替换i ++,它们都会返回5050和101的总和.所以我真的看不出它们有什么不同.
所以有人可以向我解释这个吗?编程中哪一个最常用?谢谢!!
这个问题需要在不使用<string>头文件的情况下组合两个字符串(前面的较长的字符串和较长的字符串后面的较短的字符串).每个字符串输入不能超过20个字符.我背后的逻辑是:
- 第一次使用
strlen获得的长度str1和str2,- 用于
str3存储较长的字符串,并str4存储较短的字符串.- 添加
str3和str4到str5
这是我的代码:
#include<iostream>
using namespace std;
int main()
{
// combine two strings , longer in the front, and shorter
// after it. do not use strcat
char str1[20],str2[20],str3[20],str4[20],str5[40];
// str1 and str2 stores original data, str3 stores longer
// and str4 stores shorter, str5 stores total
int j=0;
cin.getline(str1,20);
cin.getline(str2,20);
if(strlen(str1)<=strlen(str2))
// give longer string value to str3,shorter to …Run Code Online (Sandbox Code Playgroud)