(*(void(*)())0) ();
Prerequisites
float (*h)();
Indicates that h is a pointer to a function that returns a float value.
(float(*)())
A type conversion symbol that represents a "pointer to a function that returns a float value"
Assuming fp is a function pointer, how to call the function pointed to by fp is as follows:
(*fp)();
According to people's habitual thinking, we can write
(*0)();
The above formula does not work because the operator * must take a pointer as an operand, and this pointer must be a function pointer. So we have to force 0 to be converted into a function pointer (a pointer to a function with a return value of type void)
Assume fp is a float pointer, declared as follows
float * fp;
Force 0 to be converted into a float pointer (just remove the variable fp)
(float *)0;
similar:
Assume that fp is a pointer to a function of type void), the declaration is as follows:
void (*fp)();
Force 0 to be converted into the function pointer (just remove the variable fp)
(void(*)())0
Finally, replace fp with (void(*)())0 to get the usage of calling
(*(void(*)())0) ();
Typedef can be used to simplify function pointers
For example:
typedef char * string;
string test="hello";
similar
typedef void(*func)(); // In this way, func represents the type of a function pointer
(*(func)0)();
example
method one:
typedef void (*pfunction)(void);
void FMI_Jump(void)
{
pfunction jump;
jump=(pfunction)(0x80000);
jump();
}
Method Two:
((void(code *)(void))0xF400)();
Previous article:Problems with while(1) in C language for microcontrollers
Next article:Time scheduling architecture, good stuff
Recommended ReadingLatest update time:2024-11-16 22:25
Professor at Beihang University, dedicated to promoting microcontrollers and embedded systems for over 20 years.
- Innolux's intelligent steer-by-wire solution makes cars smarter and safer
- 8051 MCU - Parity Check
- How to efficiently balance the sensitivity of tactile sensing interfaces
- What should I do if the servo motor shakes? What causes the servo motor to shake quickly?
- 【Brushless Motor】Analysis of three-phase BLDC motor and sharing of two popular development boards
- Midea Industrial Technology's subsidiaries Clou Electronics and Hekang New Energy jointly appeared at the Munich Battery Energy Storage Exhibition and Solar Energy Exhibition
- Guoxin Sichen | Application of ferroelectric memory PB85RS2MC in power battery management, with a capacity of 2M
- Analysis of common faults of frequency converter
- In a head-on competition with Qualcomm, what kind of cockpit products has Intel come up with?
- Dalian Rongke's all-vanadium liquid flow battery energy storage equipment industrialization project has entered the sprint stage before production
- Allegro MicroSystems Introduces Advanced Magnetic and Inductive Position Sensing Solutions at Electronica 2024
- Car key in the left hand, liveness detection radar in the right hand, UWB is imperative for cars!
- After a decade of rapid development, domestic CIS has entered the market
- Aegis Dagger Battery + Thor EM-i Super Hybrid, Geely New Energy has thrown out two "king bombs"
- A brief discussion on functional safety - fault, error, and failure
- In the smart car 2.0 cycle, these core industry chains are facing major opportunities!
- The United States and Japan are developing new batteries. CATL faces challenges? How should China's new energy battery industry respond?
- Murata launches high-precision 6-axis inertial sensor for automobiles
- Ford patents pre-charge alarm to help save costs and respond to emergencies
- New real-time microcontroller system from Texas Instruments enables smarter processing in automotive and industrial applications
- Level shifter reverse circuit
- Please advise, is it necessary to consider the safety power when calculating the LED resistance?
- [RVB2601 creative application development] u8g2+IP
- What are the screw holes in this package for?
- Summary of learning about state machine scheduling design
- After adding a product to the ONENET platform, when adding a device, the automatic subscription option allows the device to subscribe to ONENET messages?
- Power chip static current
- Commonly used anti-collision algorithms in RFID systems
- Children's Poetry White Model Electronic Book--Why does the relationship between current parallel negative feedback circuits have a negative sign?
- How do sensors with different protocols achieve remote data transmission?