美文网首页
7-函数指针_字符串转整数练习

7-函数指针_字符串转整数练习

作者: ibo | 来源:发表于2017-02-03 15:42 被阅读0次
当参数为:一个普通变量时
  • 变量的值 : 复制传参
  • 变量的地址 : 地址传参
  • 函数 : 获取两个变量num1 = 123, num2 = 456;
  • 完成数值交换 ==> num1 = 456, num2 = 123;

练习 :

输入一个字符串 "1234" , 得到整型值 1234 ;
#include <stdio.h>

int fun(char *p)
{
    int num = 0;

    while(*p != '\0')
    {
        if(*p >= '0' && *p <= '9')
        {
            num = num*10 + *p - '0';
        }
        else
            return -1;
        p++;
    }
    return num;
}
int main(int argc, const char *argv[])
{
    char src[128] ;
    int ret ;

    printf("请输入一个只含有数字的字符串: ");
    gets(src) ;
    ret = fun(src);

    if(ret == -1)
    {
        printf("输入有误, 退出\n");

    }
    else
    {
        printf("结果值为 : %d\n",ret);
    }
    return 0;
}
函数指针:
#include <stdio.h>

void (*fun(void (*)(int),int))(int); // void (*)(int)  fun (void (*)(int), int); 函数声明
void fun1(int);
int main(int argc, const char *argv[])
{
    int num = 123;
    fun(fun1, num);
    return 0;
}

void (*fun(void (*p)(int), int n))(int)
{
    p(n);

    return p;
}

void fun1(int num)
{
    printf("num = %d\n",num);
}

函数指针:
  • 函数指针 : 函数名 代表的为 函数的入口地址.
  • void (*p)(int) ==> void fun(int)*p
  • 数据类型 * 指针变量名 ;
  • 定义函数指针; 直接把函数名替换为 (*指针变量名)
  • 注意: ()不能省略.
命令行传参 :
  • int main(int argc, const char *argv[]) ;
  • argc : 命令行传入参数的个数 (包括 ./a.out)
  • argv[] : 传入参数的首地址.
malloc函数 :
  • #include <stdlib.h>
  • void *malloc(size_t size);
  • 参数 :size , 需要申请的内存空间的大小, 以字节为单位.
  • 说明 : size_t : unsigned int
  • 返回值 : 成功, 返回值为申请空间的首地址 .
  • 失败或者size 为 0 时 , 返回值为 NULL .
释放函数
  • void free(void *ptr)
  • 释放ptr所指向的内存空间.
  • 注意: 告诉系统, 这段内存空间可以继续分配.
* 全局变量 : 谨慎使用.
* 指针函数 : 返回值类型为指针的函数.
* malloc 与 free 一一对应.

相关文章

  • 7-函数指针_字符串转整数练习

    当参数为:一个普通变量时 变量的值 : 复制传参 变量的地址 : 地址传参 函数 : 获取两个变量num1 = 1...

  • LeetCode 8 字符串转整数(atoi)

    8 字符串转整数(atoi) 一、题目 请你来实现一个atoi函数,使其能将字符串转换成整数。 首先,该函数会根据...

  • C语言第八部分

    本篇博客的主要知识点是: 86指针与函数的关系 87指针与函数思考练习 88指针与字符串 89指针与字符串的思考练...

  • 【C/C++】字符串转数字

    字符串转整数,不仅是面试题常考题目,也是日常常用函数。这里对其中的区别做一个备注,便于以后查看。 一、字符串转整数...

  • Python Day 7

    回顾: 字符串 编码转换 ord(x) chr(x) 整数转字符串的函数: hex(i) oct(i) bin(i...

  • LeetCodeDay09

    8. 字符串转整数 (atoi) 描述 实现 atoi,将字符串转为整数。 在找到第一个非空字符之前,函数需尽可能...

  • 每天进步一点点【2019.8.22】

    一、字符串转换整数(atoi)【leetcode 8】 题目描述:请你来实现一个 atoi 函数,使其能将字符串转...

  • C语言18 指针与字符串

    C语言18 指针与字符串 字符串的几种表示方式有什么区别? 常用的字符串函数 指针函数 本质就是函数,只不过函数的...

  • TS:整数、字符串、数组之间的转换

    一、字符串转整数Number函数: +号操作符: 判断字符串能否转换为数组 注意:当字符串不能转换为数字,得到的结...

  • Leetcode(8) -字符串转整数 - java版

    Leetcode(8) -字符串转整数 - java版 题目 难度: 中等 请你来实现一个 atoi函数,使其能...

网友评论

      本文标题:7-函数指针_字符串转整数练习

      本文链接:https://www.haomeiwen.com/subject/bpydittx.html