





May 7, 2023
If you don’t like grid[y][x], you can use grid[r][c] instead.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
#include <iostream> using namespace std; int main(int argc, char** argv) { constexpr int kRows = 2; constexpr int kCols = 3; int arr[kRows][kCols] = {{1,2,3},{4,5,6}}; for (int r = 0; r < kRows; ++r) { for (int c = 0; c < kCols; ++c) cout << arr[r][c] << " "; cout << endl; } for (int r = 0; r < kRows; ++r) for (int c = 0; c < kCols; ++c) cout << &(arr[r][c]) - &(arr[0][0]) << " "; return 0; } // Output: // 1 2 3 // 4 5 6 // 0 1 2 3 4 5 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
#include <stdio.h> #include <thread> int a = 1; void run(int s) { a += s; } int main(int argc, char** argv) { std::thread thread1(run, 2); std::thread thread2(run, 5); thread1.join(); thread2.join(); printf("%d\n", a); return 0; } // Output: // 8 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
#include <stdio.h> #include <sys/types.h> #include <unistd.h> int a = 1; void run(bool child) { a += child ? 2 : 1; } int main(int argc, char** argv) { a += 1; pid_t pid = fork(); run(pid == 0); printf("%d\n", a); return 0; } // Output: // 3 // 4 |