#pragma once is NOT standard
But #ifndef is standard
#ifndef XXX_YYYY
#define XXX_YYYY
#endif // XXX_YYYY
In the compile-time #pragma once is faster.
https://stackoverflow.com/questions/1143936/pragma-once-vs-include-guards
https://beesbuzz.biz/code/1473-pragma-once-vs-ifndef-define
Sunday, December 29, 2019
Thursday, December 12, 2019
[VS Code] enable define in C & C++
Setting Visual Studio Code
c_cpp_properties.json
ctrl+shift+p
>C/C++:Edit Configuration (JSON)
Make c_cpp_properties.json in .vscode folder, and
- Updated c_cpp_properties.json syntax
c_cpp_properties.json
ctrl+shift+p
>C/C++:Edit Configuration (JSON)
Make c_cpp_properties.json in .vscode folder, and
- Updated c_cpp_properties.json syntax
"configurations": [
{
"defines": [
"WIN32",
],
// ...
}
],
Monday, November 11, 2019
Saturday, October 26, 2019
How can I find what instruction set extension is supported in my Intel Processor?
https://www.intel.com/content/www/us/en/support/articles/000005779/processors.html
1. Go to https://ark.intel.com/content/www/us/en/ark.html site
2. Processors
3. Select Intel xxx Processor type
4. Select Product Name: Intel® Core™ i7-5500U Processor
5. Find "Advanced Technology"
You can find the supported SIMD instructions
Intel i7-5500U can support: Intel® SSE4.1, Intel® SSE4.2, Intel® AVX2
And
How to Identify My Intel® Processor
And gcc x86 options
https://gcc.gnu.org/onlinedocs/gcc/x86-Options.html
1. Go to https://ark.intel.com/content/www/us/en/ark.html site
2. Processors
3. Select Intel xxx Processor type
4. Select Product Name: Intel® Core™ i7-5500U Processor
5. Find "Advanced Technology"
You can find the supported SIMD instructions
Intel i7-5500U can support: Intel® SSE4.1, Intel® SSE4.2, Intel® AVX2
And
How to Identify My Intel® Processor
And gcc x86 options
https://gcc.gnu.org/onlinedocs/gcc/x86-Options.html
Thursday, April 18, 2019
How to add commend in "macro function" or #define ?
int small_func(int a)
{
// input plus two
return (a + 2);
}
#define SMALL_FUNC(a) ({ \
int result;
do { \
/* input plus two */ \
result = a + 2; \
} while(0); \
result; \
})
How to Add Comments to Macros
{
// input plus two
return (a + 2);
}
#define SMALL_FUNC(a) ({ \
int result;
do { \
/* input plus two */ \
result = a + 2; \
} while(0); \
result; \
})
How to Add Comments to Macros
for loop multiple conditions
what is the right?
1. for (i = 0, j = 0; i < loop, j < loop2; i++, j++)
2. for (i = 0, j = 0; (i < loop) && (j < loop2); i++, j++)
The answers are
Are multiple conditions allowed in a for loop?
GeeksforGeeks: Output of C Program | Set 22, question 2
for example
i = 1, 2; is same as i = 2;
1. for (i = 0, j = 0; i < loop, j < loop2; i++, j++)
2. for (i = 0, j = 0; (i < loop) && (j < loop2); i++, j++)
The answers are
Are multiple conditions allowed in a for loop?
GeeksforGeeks: Output of C Program | Set 22, question 2
for example
i = 1, 2; is same as i = 2;
Wednesday, April 17, 2019
TI DSP memory & memory map
L2SRAM: very very fast
MSMCSRAM (Multi-core Shared Memory Controller, SRAM): very fast
DDR3: fast
TI Linker Command File Primer
MSMCSRAM (Multi-core Shared Memory Controller, SRAM): very fast
DDR3: fast
TI Linker Command File Primer
Subscribe to:
Posts (Atom)