• C语言中容易混淆的问题


    字符数组与字符串

    1.C语言中,没有专门的字符串变量,没有string类型,通常就用一个字符数组来存放一个字符串。
    2.字符串结束标志'',c语言中字符串总是以''作为结尾。
    3.字符串会自动在结尾补''。
    4.用字符数组存储字符串时,要特别注意'',要为''留个位置,所以字符数组的长度至少要比字符串的长度大 1。

    char str[7] = "abc123";
    或者
    char str[] = "abc123";

    5.逐个为字符数组赋值时,容易遗忘补字符串结束标志'',可以将字符数组所有元素都初始化为“零”值。

    char str[30] = {0}; //将所有元素都初始化为 0,或者说 ''

    6.字符数组长度是固定的,其中任何一个数组元素都可以为 null('') 字符。

    char str[32] = "abc123";
    printf("%d
    ",sizeof(str)); \32 数组固定长度,其它没有赋值的元素为''
    printf("%d
    ",strlen(str)); \6 字符个数

    7.字符串长度。
    所谓字符串长度,就是字符串包含了多少个字符(不包括最后的结束符'')。

    char *str = "abc123";
    printf("%d
    ",strlen(str)); //6


    指针函数和函数指针

    指针函数:指函数的返回值为指针,即本质是一个函数。函数返回类型是某一类型的指针。

    int *f(x,y);  /* 声明一个函数 */

    函数指针:指向函数的指针变量,即本质是一个指针变量。

    int (*f) (int x); /* 声明一个函数指针 */
    
    f=func; /* 将func函数的首地址赋给指针f */ 
    //f=&func;

    指针数组和数组指针

    指针数组:存储指针的数组,可以理解为"指针的数组"。

    数组指针:指向数组的指针,本质是指针,只是指向数组。

  • 相关阅读:
    iOS_文件上传进度条的实现思路-AFNettworking
    快手为什么成功
    Swift 3.1 的一些新特性
    字典类型的字符串转成字典
    phpmyadmin通过日志文件拿webshell
    计算机网络基础知识
    写一个php小脚本辅助渗透测试
    Zabbix exp编写
    sqlmap里如何添加字典
    过狗注入学习姿势分享2[投稿华盟网]
  • 原文地址:https://www.cnblogs.com/-wenli/p/12300037.html
Copyright © 2020-2023  润新知