无参数参数传递打印出"hello world"

本文详细解析了一个C语言程序中函数调用的过程,特别是如何通过打印函数来展示栈的变化,以及如何理解caller和callee规则。文章通过实例程序演示了如何使用全局静态区的指针来传递参数,以及如何在不传递参数的情况下调用函数,并打印出特定字符串。此教程旨在帮助开发者深入理解C语言中函数调用的基本原理。

以前在一本书上看到过一个很有趣的程序,就是:

int main()
{
    int i=0;
    char s[]="123";
    char* p="hello,world";
    print_hello();
    return 0;
}
就是先声明一个整型变量i,char型数组,一个指向存储在全局静态区的char型指针,然后调用函数print_hello(),但是没有参数传递,但是print_hello()函数要打印出p指向的字符串出来,这个要求对函数的调用过程很清楚,特别stack中的变化要很清楚,对C的"caller和callee规则"也要很清楚,在实现print_hello()前先学习一些必备背景知识。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值