文档章节

第09天C语言(06):指针综合练习

lyh2017iOS
 lyh2017iOS
发布于 2017/07/06 01:25
字数 226
阅读 0
收藏 0

#pragma mark 指针综合练习 ###pragma mark 概念

###pragma mark 代码

#include <stdio.h>
#include <string.h> // 计算字符串 长度
int myStrlen(char *str);
int myStrlen2(char *str);
int myStrlen3(char *str);
int main()
{
#warning 要求自己视线strlen函数
    char *name = "lyh";
//    size_t size = strlen(name);   // 系统
//    int size = myStrlen(name);    // 不使用指针
    int size = myStrlen3(name);     // 使用指针
    printf("size = %lu\n",size);
    
    
    return 0;
}
int myStrlen3(char *str)
{
    int count = 0;
    // \0 ascii码 代表 0  // 0代表假 1代表真
    /*
     l != \0 ——————  != 0 为真 ++
     y != \0 ——————  != 0 为真 ++
     h != \0 ——————  != 0 为真 ++
     
     */
    /*
    while (*str++) {
        count++;
    }*/
    while (*str++) count++; // 省略大括号
    return count;
}
// 指针实现效果
int myStrlen2(char *str)
{
    int count = 0;
    // *str取出对应的字符
    // 先去访问 str里面的值 再去++ 进行一下判断
    while (*str++ != '\0') {
        count++;
//        str = str + 1;  // str == str[1]
//        str ++; // ++可以在变量名前,也可以在变量名后
    }
    return count;
}

int myStrlen(char *str)
{
    int count = 0;
    while (str[count] !='\0') {
        count ++;
    }
    return count;
}

© 著作权归作者所有

共有 人打赏支持
lyh2017iOS
粉丝 1
博文 357
码字总数 137380
作品 0
朝阳
私信 提问
JavaScript 30天每日效果图

JavaScript 30天每日效果图 在Github上看到了wesbos的一个Javascript30天挑战的repo,旨在使用纯JS来进行练习,不允许使用任何其他的库和框架,该挑战共30天,我会在这里复现这30天遇到的挑战...

黎跃春
2017/07/19
0
0
[iOS]C语言知识点系列视频整理

C语言知识点系列视频 目录 C语言技术视频-01-变量的定义 C语言技术视频-02-程序分支结构(if...else) C语言技术视频-03-程序分支结构(switch) C语言技术视频-04-程序循环结构(while{}) C语言技...

浩浩老师
2015/10/13
38
0
C语言自学完备手册(28)——指针(2)

版权声明: https://blog.csdn.net/lfdfhl/article/details/83118205 自定义View系列教程00–推翻自己和过往,重学自定义View 自定义View系列教程01–常用工具介绍 自定义View系列教程02–o...

谷哥的小弟
10/17
0
0
值类型与不可变类型

看到一个叫王垠的人写了一篇文章,叫做《Java 有值类型吗?》。我发现他的思路和我之前的两个观点有点像。 C语言只有值类型 我以前经常说C语言参数只有一种传递方式,就是值传递。因为指...

chunquedong
2016/08/20
19
0
最丑陋的 C 语言特性:tgmath.h

是一个在C99引入的,标准C语言库提供的头文件。对于Fortran编写的数值软件,它向C语言提供更加简洁的接口。 跟C语言不同,Fortran提供了编写在该语言内部的“固有函数”,其表现得更像操作符...

oschina
2013/10/11
7K
18

没有更多内容

加载失败,请刷新页面

加载更多

七牛qshell工具 批量删除操作

qshell 下载地址&文档(http://developer.qiniu.com/code/v6/tool/qshell.html) 这里我们演示的是windows下的操作,将下载的工具改名为:qshell.exe 然后将文件的路径添加到PATH 然后 点击 “...

koothon
54分钟前
1
0
Fastjson-fastjson中$ref对象重复引用问题

import java.util.ArrayList;import java.util.List;import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.serializer.SerializerFeature;/** * fastjson中$ref对象......

小黄狗
今天
1
0
mybatis一级缓存

mybatis执行查询的流程,最终都是通过动态代理进入到MapperProxy的invoke方法 @Override public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { try......

wuyiyi
今天
6
0
安装weblogic wls1033_generic.jar 遇见的坑

接别人的烂摊子,weblogic部署没部署成功不部署了 让我远程给别人部署weblogic 11g 部署完成启动域的时候启动不了报错如下 Unrecognized option: -jrockit Error: Could not create the Ja...

雁南飞丶
今天
1
0
通过7个python函数理解区块链

我想对于那里的很多人来说,区块链就是这种现象,很难不让你头脑发热。我开始观看视频和阅读文章,但对我个人而言,直到我编写自己的简单区块链,我才真正理解它是什么以及它的潜在应用价值。...

笔阁
今天
26
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部