前段时间,我的老教师发布了这段代码,说这是将数组初始化为相同数字的另一种方法(当然不是零).
在这种情况下三个.
他说这种方式比for循环要好一些.为什么我需要左移操作符?为什么我需要另一个长数组呢?我不明白这里发生了什么.
int main() {
short int A[100];
long int v = 3;
v = (v << 16) + 3;
v = (v << 16) + 3;
v = (v << 16) + 3;
long *B = (long*)A;
for(int i=0; i<25; i++)
B[i] = v;
cout << endl;
print(A,100);
}
Run Code Online (Sandbox Code Playgroud)