C++二级指针第一种内存模型(指针数组)
二级指针第一种内存模型(指针数组)
指针的输入特性:在主调函数里面分配内存,在被调用函数里面使用
指针的输出特性:在被调用函数里面分配内存,主要是把运算结果甩出来
指针数组
运用
举例:
#include "stdio.h"
#include "stdlib.h"
#include "string.h" void main()
{
int i = , j = ;
char *tmp = NULL; char *ArrayStr[] = {"ccccc", "aaaa", "bbbb",""}; for (i=; i<; i++)
{
printf("%s \n", ArrayStr[i]);
} //排序 for (i=; i<; i++)
{
for (j=i+; j<; j++)
{
if (strcmp(ArrayStr[i],ArrayStr[j]) > )
{
tmp = ArrayStr[i];
ArrayStr[i] = ArrayStr[j];
ArrayStr[j] = tmp;
}
}
} for (i=; i<; i++)
{
printf("%s \n", ArrayStr[i]);
} system("pause");
}
#include "stdio.h"
#include "stdlib.h"
#include "string.h"
int printfArr(char **ArrayStr, int iNum)
{
int i = ;
for (i=; i<iNum; i++)
{
printf("%s \n", ArrayStr[i]);
}
return ;
} int sortArrayStr(char **ArrayStr, int iNum)
{
int i = , j = ;
char *tmp = NULL;
//排序 for (i=; i<; i++)
{
for (j=i+; j<; j++)
{
if (strcmp(ArrayStr[i],ArrayStr[j]) > )
{
tmp = ArrayStr[i];
ArrayStr[i] = ArrayStr[j];
ArrayStr[j] = tmp;
}
}
}
return ;
} //二级指针第一种内存模型
void main()
{
char *ArrayStr[] = {"ccccc", "aaaa", "bbbb",""}; printf("排序之前\n");
printfArr(ArrayStr,);
sortArrayStr(ArrayStr, ); printf("排序之后\n");
printfArr(ArrayStr,); system("pause");
}
一维指针数组做函数参数会退化为二级指针
C++二级指针第一种内存模型(指针数组)的更多相关文章
- C++二级指针第二种内存模型(二维数组)
C++二级指针第二种内存模型(二维数组) 二维数组 二维数组本质上是以数组作为数组元素的数组,即“数组的数组”. 定义 类型说明符 数组名[常量表达式][常量表达式] 例如: float a[3][4 ...
- 深入理解C语言-二级指针三种内存模型
二级指针相对于一级指针,显得更难,难在于指针和数组的混合,定义不同类型的二级指针,在使用的时候有着很大的区别 第一种内存模型char *arr[] 若有如下定义 char *arr[] = {&quo ...
- C++二级指针第三种内存模型
#include "stdio.h" #include "stdlib.h" #include "string.h" void main() ...
- C语言重点——指针篇(一文让你完全搞懂指针)| 从内存理解指针 | 指针完全解析
有干货.更有故事,微信搜索[编程指北]关注这个不一样的程序员,等你来撩~ 注:这篇文章好好看完一定会让你掌握好指针的本质 C语言最核心的知识就是指针,所以,这一篇的文章主题是「指针与内存模型」 说到指 ...
- C语言 二级指针内存模型①
//二级指针第一种内存模型 #include<stdio.h> #include<stdlib.h> //说明:①:类似于int a[5]={0},数组名a是一维数组a中首元素 ...
- C语言 二级指针内存模型混合实战
//二级指针内存模型混合实战 #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> #i ...
- C语言 二级指针内存模型②
//二级指针第二种内存模型 #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> #incl ...
- c语言二级指针内存模型
第一种: 指针数组作为输入参数 char *myArray[] = {"aaaaaa", "ccccc", "bbbbbb", " ...
- DirectX11 With Windows SDK--29 计算着色器:内存模型、线程同步;实现顺序无关透明度(OIT)
前言 由于透明混合在不同的绘制顺序下结果会不同,这就要求绘制前要对物体进行排序,然后再从后往前渲染.但即便是仅渲染一个物体(如上一章的水波),也会出现透明绘制顺序不对的情况,普通的绘制是无法避免的.如 ...
随机推荐
- js倒计时跳转页面实现
- IIS 域名 带参数 设置重定向
IIS里面设置重定向后,经常会出现,从百度快照里直接打不开的情况. 可以在IIS里面设置重定向的时候,把参数加上,格式如下: http://www.***.com%S%Q
- epoll机制:epoll_create、epoll_ctl、epoll_wait、close
在Linux的网络编程中,很长的时间都在使用select来做事件触发.在linux新的内核中,有了一种替换它的机制,就是epoll.相比于select,epoll最大的好处在于它不会随着监听fd数 ...
- tableView上出现空白的解决办法
创建tableView后,出现如下效果 解决办法: self.automaticallyAdjustsScrollViewInsets = NO; 个人认为,应该是取消系统默认行为,保证界 ...
- Luogu 1415-拆分数列-动态规划
Solution 首先要找到使得最后一个数最小, 只需定义一个数组$pre[i]$ 从区间$[pre[i], i]$表示的数, 是最小的能使前面的数递增的方案. $[ pre[n], n]$即为最小的 ...
- JVM运行时数据区域解析
Java与C++之间有一堵由内存动态分配和垃圾收集技术所围成的高墙,墙外面的人想进去,墙里面的人想出来. Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同 ...
- Carbon document
< Getting Started Docs Reference History Contribute Github Introduction The Carbon class is inh ...
- centos7构建python2.7常用开发环境
把下面的代码保存到一个sh文件中执行即可 yum -y install epel-release yum -y install python-pip yum -y install mysql-deve ...
- 【C++】c++中栈 队列 的应用
C++中提供了STL模板statck 在使用的时候更为方便 除了一般的队列外 还有STL更有双向队列可以使用 #include<deque> 声明:deque <type > ...
- input.file样式修改
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...