美文网首页十天学会C语言程序员
C语言day09-05指针变量复用

C语言day09-05指针变量复用

作者: liyuhong165 | 来源:发表于2016-05-04 23:39 被阅读71次

pragma mark 指针变量复用

pragma mark 概念

pragma mark 代码

#include <stdio.h>
void change();
void change2(char *p);
void change3(int values[]);
void change4(int *p);
char *demo();
char *demo2();

int main()
{
#warning 
    
    /*
     只要是数据类型就具有3个特点
     1. 可以用来定义变量
     2. 可以用来作为形参和实参
     3. 作为返回值
     */
    
    /*
    int num = 10;
    change(num);
    printf("num  = %i\n",num);
    
//    char *name = "lyh"; // 指针指向一个字符串 那么这个字符串是一个常量 不可以修改
//    change2(name);
    
    int nums[] = {1,3,5};
//    change3(nums);          // 数组名就是数组的地址
    change4(nums);          // 数组名就是数组第0个元素的地址

    printf("nums[0] = %i\n",nums[0]);
     */
    
#warning 指针作为返回值
    
    char *name = demo();
    printf("name = %s\n",name);
    
    
    char *name2 = demo2();
    printf("name2 = %s\n",name2);
    
    return 0;
}
char *demo2()
{
    char name[] = "lyh"; // 存储在栈区 函数调用完会释放
    return name;
}

char *demo()
{
    char *name = "lyh"; // 存储在常量区 所以能打印出来
    return name;
}
// 专业
void change4(int *p)
// int *p \
== nums; \
== int*p == &nums; \
== int *p == &nums[0]
// int *p; p = nums; p == nums;
{
    p[0] = 998;
}
// 不专业
void change3(int values[])
{
    values[0] = 998;
}

/*
void change2(char *p)
{
    *p = "lys";     // 直接挂了
}
*/
void change(int value)
{
    value = 55;
}

相关文章

  • C语言day09-05指针变量复用

    pragma mark 指针变量复用 pragma mark 概念 pragma mark 代码

  • [Swift]结构体指针操作

    C语言的指针操作 在c语言中申明一个变量并通过指针修改该变量的值 a value is 2 c语言操作结构体指针操...

  • 带小白学C语言指针

    C语言里指针才是C语言的开始和指针;C语言里基本所有东西都是由指针演变而成; 指针是指向地址的变量,类型就是指针...

  • 深入理解C指针

    标签(空格分隔): C语言进阶 本文将会持续更新。。。。 指向指针的指针 在c语言中指针的操作时通过指针变量来实现...

  • C语言14 指针类型

    C语言14 指针类型 指针是C语言中的一种数据类型, 定义带 "*"类型的变量 总结: 任何带有*的变量类型的标...

  • [C]C语言指针

    Blog C语言指针详解 C语言字符串操作 指针的作用 指针是程序数据在内存中的地址,指针变量是用来保存这些地址的...

  • 初探指针

    指针指针就是地址,指针也是C语言的一种数据类型,用指针类型定义的变量称为指针变量。指针变量与普通变量一样占有一定的...

  • Xcode崩溃原因汇总

    调用野指针 野指针定义:C语言: 当我们声明1个指针变量,没有为这个指针变量赋初始值.这个指针变量的值是1个垃圾指...

  • iOS崩溃总结

    一 野指针 C语言 当我们声明1个指针变量,没有为这个指针变量赋初始值.这个指针变量的值是1个垃圾指针 ,指向1块...

  • C语言:指针1

    一、指针变量定义 C语言两种变量:其中变量(普通变量)存储内容值;地址变量(指针变量)存储地址值。 1.定义格式:...

网友评论

    本文标题:C语言day09-05指针变量复用

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