What is the difference between a function passing array and a passing address in C language
This article introduces the knowledge of "what is the difference between C language function transfer array and delivery address". In the operation of actual cases, many people will encounter such a dilemma. Next, let the editor lead you to learn how to deal with these situations! I hope you can read it carefully and be able to achieve something!
Catalogue
Transfer value
Delivery address
Note:
Transfer value
Code:
# include void deliveryData (int data) {data= data + 100; printf ("deliveryData:data=%d\ n", data);} int main (void) {int data=10; deliveryData (data); printf ("main:data=%d\ n", data); return 0;}
Running result:
C:\ Users\ Administrator\ Desktop\ C_Study\ new version c language\ program\ unit5_function > a.exe
DeliveryData:data=110
Main:data=10
Delivery address
Code:
# include void deliveryData (int data []) / / where int data [] is the address (equivalent to pointer) {data [0] = data [0] + 100; printf ("deliveryData:data=%d\ n", data [0]);} int main (void) {int data [2] = {1,2}; deliveryData (data); / / the address printf ("main:data=%d\ n", data [0]) is passed here Return 0;}
Running result:
C:\ Users\ Administrator\ Desktop\ C_Study\ new version c language\ program\ unit5_function > a.exe
DeliveryData:data=101
Main:data=101
Note:
Pass values, operate on different memory space transfer addresses, and operate on the same memory space
This is the end of the content of "what is the difference between the C language function passing array and the passing address". Thank you for your reading. If you want to know more about the industry, you can follow the website, the editor will output more high-quality practical articles for you!