关于c语言指针和函数的运用

#include
#include
#include
char change(char*str)
{
char *p=str;

}
int main()
{
char y;
char*str=(char*)malloc(100);
gets(str);
change(str);

 return 0;

}
这是编写的前一些,我想输入个数未知的几个数,然后将数的进行相加算出平均数,但是在副函数中代入了指针地址后,该如何操作了。求大神解答

2个回答

你的这短短的代码有很多语法错误,malloc使用也有错。
然后我们来说说,这个题应该怎么做。使用的方法:可变参数列表法。具体的代码可以百度搜索以及学习可变参数。

你的程序和你说的题目完全不同。你的程序好像试图改变指针,而且没看到任何计算平均的地方,连int float这些类型也没有。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
C语言指针的运用
C语言指针的运用
C语言指针的函数运用和数组
1.指针数组与数组指针 (1)指针数组: 指针数组的实质是一个数组,这个数组中存储的内容全部是指针变量。 (2)数组指针: 数组指针的实质是一个指针,这个指针指向的是一个数组。 分析:int p[5]; int (*p)[5]; int (p[5]);
c语言函数的运用
1.猜数字游戏 将菜单和执行猜数字的主体都用main函数以外的自定义函数编写,再由main函数调用后,执行结果 #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> #include <time.h> int Menu(){ int i; printf("********...
c语言指针飞运用
我要写一个程序,就是打乒乓球。A和B打球,A赢一个给加一分,B赢一个给B加一分。最后谁先得十一分谁赢。如果打到了十平,那么继续使最大的十一加一,即谁先得十二谁赢,以此类推...最后是打五局,如果谁先得3局谁就赢。(就是一个乒乓球球规则的代码)哪位高手帮帮忙,你和你的家人朋友一定幸福一辈子。
C语言指针基本知识和运用
最容易理解的指针资料 指针最基本的资料 学C指针基本资料
C语言指针-----指针与函数
1、函数参数的引用传递–指针方式 2、指针函数 3、函数指针 指针与函数主要有两点,一是函数参数通过指针调用,二是指针函数和函数指针的概念。1、函数参数的引用传递–指针方式 函数参数的传递方式有两种:按值传递,引用传递 引用传递分为指针方式和引用方式,其中引用方式是C++里的传值方式。 这里按指针方式的传值就不详细说了,作用大家应该都明白。 2、指针函数
C语言 函数与指针
void change(int* pa) { (*pa)++; //因为传递的是age的地址,因此pa指向内存数据age。当在函数中对指针pa解地址时, //会直接去内存中找到age这个数据,然后把它增1。 } int main(void) { int age = 19; change(&age); printf("age...
C语言-指针-函数
自己分析了一个小程序,与大家共享
c语言函数与指针
1.主函数形参 int main(int argc, char *argv[ ] // char **argv) argv 存储命令行参数 argc 命令行参数个数(包括命令本身)   2.传指针名或指针数组名用二维指针来接。   3.函数指针 int (*p_func)(int,int);  定义函数指针 p_func = add;  初始化函数指针 函数名是指针常
关于C语言指针 * (指针)
关于C语言指针 * 定义:类型名 * 指针变量名; 举例: a 是数组,储存整型数据。 声明 + 初始化:int * p1 = &a[0]; 声明:int * p1; 初始化:p1 = &a[0]; 或者 p1 = a; 含义:把数组a的地址赋值给p1 逐步理解:p1是指针变量,即是存储地址的变量,现在存储的是数组的地址,定义时的 * 是为了区别 int p 和 int * ...
c语言关于指针
关于c语言中指针的ppt,指针用好,更有利于c语言的开发
C语言关于指针
关于以语言的,大家看了会懂一些的,我相信会的
关于C语言的指针
关于C指针
指向函数的指针运用
运用指向函数的指针实现一个通用函数调用两个函数,显示两个不同结果。 两个函数的作用是求两个不同的不定积分。
C语言学习中的指针的运用和使用
C语言学习习题代码,可供学习和参考,也可用于程序阅读和分析的训练。
C语言复杂表达式,指针高级运用
1 指针数组是数组 数组指针是指针:指针指向的是一个数组。 分析: int *p[5]; int (*p)[5]; int *(p[5]);//和第一个是一样的,小括号是多余的,用了也没错。 第一步找核心:定义的符号是谁 第二步找结合:如果核心和*结合,表示指针;如果核心和【】结合,表示数组;如果核心和()结合,表示是函数。 第三步向外扩展:找到核心后,从内到外逐层的进行
深入理解C语言指针的运用
指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址。 要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的 类型,指针的值或者叫指针所指向的内存区,还有指针本身所占据的内存区。让我们分别说明。
C语言基础知识之(二十):指针高级运用
函数指针: 1、定义指针指向函数 int (*p)(int, int) = maxValue; 2、通过指针调用函数,把函数指针当做函数名使用 printf("max = %d\n", p(3, 5));结果是最大值5. 语法: 函数指针的类型  返回值类型 (*)(参数列表) 如: int(*p)(int, int);   例题: 定义两个函数 ,一个求最大值,一个求和,输入
C语言函数和指针(十三)
// myVoid 等价于 (*pf) void myVoid(char *); void (*pf)(char *); // 声明函数的形参为另一个函数 void show(void (*fp)(char *),char *c); //创建函数指针数组 typedef void(*ppf)(char *);//数组函数元素 void myVoid2(char *); void myVoid3
C语言——数组、指针、函数
一.数组。 含义:存储一些同类型数据的地方,数组是一块连续的内存地址。数组名代表这块地址的起始地址。 即:#include <stdio.h> int main() { int s[3]={1,2,3}; printf("s 的地址是:%p\n", s); printf("s[0] 的地址是:%p\n", &s[0]); //s与s[0]地址一样。 ret...
C语言函数,数组与指针
指针形参 题外话:本想着一次性把和指针有关的东西一次写完,又觉得写在一个博客里把有的重点堆在一起,日后复习看起来感觉很乱。就单独把指针变量的基本操作与指针形参单独罗列出来记录。重拾C并且进一步学习C是为了给接下来自学数据结构与算法打一个厚实的基础,不得不说C primer plus真的是很好的一本书,知识真的很详细,不过有的还是没有讲到,不过都等着我发现了,进一步挖掘最底层的东西。 ...
C语言 指向函数的指针
        函数指针:如果在程序中定义了一个函数,在编译时,编译系统为函数代码分配一段存储空间,这段存储空间的起始地址(又称入口地址)称为这个函数的指针。         可以定义一个纸箱函数的指针变量,用来存放一个函数的起始地址,这就意味着次指针变量指向该函数。例如: int (* p)(int, int);    //p的类型为int(*)(int, int)         定义...
C语言指针和函数实例教程
C语言指针和函数实例教程,#include void fun() { } int main() { printf('%p %p %p\n', &fun, fun, *fun); return 0; }
C语言指针、平均值函数
/*****************************************************************************************/ !!!指针!!!   1. #include <stdio.h> int main() {         int *p;     int num;     p=#     prin...
C语言——数组、函数、指针
C语言——数组、函数、指针 宗旨:技术的学习是有限的,分享的精神的无限的。 1、有什么作用?为什么要使用它们? (1)数组:提供一段连续的存储空间,存数据和字符串很方便; (2)函数:模块化程序的设计(返回值和参数); (3)指针:使用灵活;   2、数组的内存布局 【数组和链表区别:数组顺序存储,大小固定;链表随机存储,大小不定。】 int a[5]; --- a作为右值时
C语言结构体与指针和函数与指针
本篇博文主要介绍结构体、函数和指针的应用 结构体(struct),主要分三个部分 建立结构声明:描述结构如何组合的主要方法,创建一个模板 例如:struct book { char title[MAX]; char author[MAX]; float value; }; 这就是一个结构声明,它并没有创建一个实际的数据对象,而是描述了组成这类对象的元素。因为只是声明所以就没有占用内存。 ...
【c语言】指向指针(函数)的指针学习
1.指向指针指针的指针 定义形式:[存储类型] 类型名 **指针名; int **p1; int *p2; int i=3; p2=&i; p1=&p2; **p1=5; 解析图 把i的地址赋给p2,再把p2的地址赋给p1,p1---->p2------>i 2.指向函数的指针 (1)函数指针变量定义形式 数据类型 (*指针变量名)();//如in...
关于C++语言指针->运用的不通处
我在学习数据结构的时候,看不懂链表的实现过程中关于指针->的运用,一直想不通,请高手指点下,具体如下。rnrn关键形参: link, first, next. 表达式为 next = first -> link;就是这句看不懂表达什么意思 具体定义为:rn//链表的类定义rnrntemplate rnclass ChainNodernrn friend Chain;rn private:rn T data;rn ChainNode *link;rn;rnrnrntemplaternclass Chainrnrn Chain()first = 0;rn ~Chain(); rn private:rn ChainNode * first; rn;rnrntemplaternChain :: ~Chain()rnrn ChainNode * next;rn while(first)rn rn next = first -> link;rn delete first;rn first = next;rn rn
C语言--函数的指针和指向函数的指针变量
一个函数在编译时被分配一个入口地址,这个入口地址就称为函数的指针。 函数名代表函数的入口地址,这一点和数组一样。我们可以用一个指针变量来存放这个入口地址,然后通过该指针变量调用函数。如:假设有一个求两者较大的函数如下: int max(int x, int y); 当我们调用这个函数时可以这样: int c; c max(a,b); 这是通常调用方法,其实我们可以定义一个函数指针,通过指...
C语言自学笔记--C函数和指针
非教程--C函数和指针11,什么是函数指针?2,使用函数指针3,实例程序(来自于C Primer Plus) 1,什么是函数指针? ①函数指针:主语是指针,即指向函数的指针。(可以参照整型指针,字符型指针等概念来理解) ②函数指针实际上是函数代码在内存中的起始地址。 ③示例: int (*sub)(num1,num2); a,int声明函数的返回值是整型 b,(*sub)通过()结合两个对象使他们...
C语言指针教程 深入理解指针运用
深入理解C语言指针,详细讲解各种指针的运用及示例运用,准确,易懂。
C语言指针部分(C语言指针)
第一章。指针的概念 指针的类型。 2。指针所指向的类型。 4。 指针本身所占据的内存区。 第三章。运算符&和* 其他不写了,只是部分
关于指针的运用
NODE *&Root 和 NODE *RootrnrnNODE *Root 应该是声明一个指向NODE类型的指针变量rnrn而对于NODE *&Root,偶就不太明白了?rnrn还有就是NODE *&Root和NODE *Root都分别适用在什么情况下?rnrnrn
【c语言--指针】关于指针的一些应用
#include<stdio.h> #include<stdlib.h> #include<math.h> #define N 4 /**************************** *指针要点回顾 * 指针变量与指针的概念: 指针(存储单元地址,常量) 指针变量(存放存储单元地址的变量...
C语言 '*' 在scanf函数和printf函数运用
1,在scanf函数中,加了' *' 的部分会被忽略掉(跳过),即你输入的数据不会被对应的参数获取。 下面举个栗子 int a; char b; scanf("%*c%d",&b,&a); 输入:12345   在不加 * 的情况下'1'会作为一个字符被变量b读取并吸收,'2345'作为整形被变量a吸收;但是加了 * 之后,字符变量b被忽略,所以
关于C语言指针的笔记
指针这一块一直都晕晕乎乎的。今天稍微搞懂了点,做个总结。 我参考的是这两个博客: https://www.cnblogs.com/mfrbuaa/p/3756342.html https://blog.csdn.net/wei348144881/article/details/78671052 指针里放的是一个地址,这个地址是指向某个东西,他可以一直变,也就是说他指向的东西可以一直变 指...
关于c语言的指针的编译错误
rnrn```rn #includern#includernvoid f(char *p1,char *p2)rnrnint k=3;rnchar *p4,*p5;rnp4=p1;rnp5=p4+k-1;rnfor(;p1
关于C语言指针的理解
// 三者的区别 char *s = "hello world!"; char str[] = "hello world!"; char str2[5]; char *s = “hello world!”; 这个相当于创建了一个指针变量s,指针变量s指向常量“helloworld”。 相当于const char *s = “hello world!”; 所以不能通过s来改变字符
[c语言学习]关于指针
#include /** 如果是int fun(int *q)  那么q是保存 整数值变量 的指针 而已。 不能保存传入方法的指针地址 如果想保存指针地址 只能是指针来保存 也就是指针的指针 所以int **q  *q就是指针 被赋值p的地址之后 那么*q相当于指针p  此处疑问很久 难点是忽略了 类型,值 的概念 int 整数类型 int *
关于C语言指针的用法
近来有些时间,在开发过程中调试bug的时候,经常会遇到指针乱用或者,用了不free的现象,我这里写了个例子,把我的个人看法给有同样疑惑的朋友共勉,如果有错的地方,请指正,以一个人person为对象,展开进行的一些描述,需要仔细体会多级指针怎么分配内存的,可能会发现指针的使用还是比较有意思的,如果有什么错误请指出,经过测试,运行能通过,例子如下(如果你看过linux的内核代码,那么你对结构体的指针用
相关热词 c#入门推荐书 c# 解码海康数据流 c# xml的遍历循环 c# 取 查看源码没有的 c#解决高并发 委托 c#日期转化为字符串 c# 显示问号 c# 字典对象池 c#5.0 安装程序 c# 分页算法