精华内容
下载资源
问答
  • 指针计算字符串长度,简单的小程序,c语言
  • C语言基础 指针计算字符串长度

    千次阅读 2020-12-02 23:50:05
    //利用指针计算字符串长度 int stren(char* str){ char* start=str; char* end=str; while(*end!='\0'){ end++; } return end-start; } #include<stdio.h> int main(){ char arr[]="bit"; int len=...
    //利用指针计算字符串长度
    int stren(char* str){
    	char* start=str;
    	char* end=str;
    	while(*end!='\0'){
    		end++;
    	}
    	return end-start;
    }
    #include<stdio.h>
    int main(){
    	char arr[]="bit";
    	int len=stren(arr);
    	printf("%d\n",len);
    return 0;
    }
    
    展开全文
  • (p+1) > a[1] 如果指针不是指向连续分配的空间 如数组则这种运算没有意义 指针计算 这些算术运算可以对指针做 给指针加减个整数(+, +=, -, -=) 递增递减(++/) 两个指针相减 *p++ 取出p所指的那个数据来完事之后顺便...
  • 只要在被调用的函数里的指针前面写上指针运算符 *,就能间接地处理该指针指向的对象。这也是 * 运算符又称为间接访问运算符的原因。 通过在指针前面写上指针运算符 * 来访问该指针指向的对象,称为解引用。 注: 将...
    #include <stdio.h>
    
    void sum_diff(int num1, int num2, int *sum, int *diff){
    	*sum = num1 + num2;
    	*diff = (num1 > num2) ? num1 - num2 : num2 - num1;
    }
    
    int main(void){
    	int num1 ,num2;
    	int sum, diff;
    	
    	puts("请输入两个整数。");
    	printf("整数A:");
    	scanf("%d", &num1);
    	
    	printf("整数B:");
    	scanf("%d", &num2);
    	
    	sum_diff(num1, num2, &sum, &diff);
    	
    	printf("两数之和是%d, 两数之差是%d。\n", sum, diff);
    	
    	return 0;
    } 
    

    调用函数 sum_diff 时,会将 main 函数中的 sum 和 diff 的地址复制给 sum_diff 的 形参 sum 和 diff。
    在sum_diff函数体中,将求得的和赋值给 *sum将差值赋给 *diff,这也就相当于对 main函数中的 sum 和 diff进行赋值,因此从 sum_diff 函数返回到main函数之后,和与差也分别被储存在 main函数 的 sum 和 diff 中了。

    总结:

    • 如果要在函数中修改变量的值,就需要传入指向该变量的指针。
    • 只要在被调用的函数里的指针前面写上指针运算符 *,就能间接地处理该指针指向的对象。这也是 * 运算符又称为间接访问运算符的原因。
    • 通过在指针前面写上指针运算符 * 来访问该指针指向的对象,称为解引用。

    注:
    将指向对象的指针作为形参,并在指针前写上指针运算符*,就可以访问该对象本身。利用这一点,就可以在被调用处修改进行调用处的对象的值。

    展开全文
  • C指针计算单词数

    2019-05-17 17:38:03
    知识点:利用指针和函数计算单词数 思路:首先单词属于字符,所以就定义一个字符数组 a[100],然后定义 num 用于存有多少个单词,再定义一个 word 用于判断是否需要给num+1。 先看看用一个main函数和数组做的 ⇩ ...

    知识点:利用指针和函数计算单词数

    思路:首先单词属于字符,所以就定义一个字符数组 a[100],然后定义 num 用于存有多少个单词,再定义一个 word 用于判断是否需要给num+1。
    先看看用一个main函数和数组做的

    #include<stdio.h>
    #include<Windows.h>
    void main()
    {
     char a[100];
     int i, num = 0, word = 0;
     char c;
     gets_s(a, 100);
     for (i = 0; (c = a[i]) != '\0'; i++)
     {
      if (c == ' ')
      {
       word = 0;
      }
      else if (word==0)
      {
       word = 1;
       num++;
      }
     }
     printf("There are %d  words in this line.\n", num);
     system("pause");
    }

    断是否出现一个新单词,可以由是否有空格出现来决定(连续的若干个空格作为出现一次空格,一行开头的空格不统计在内)。如果测出某一个字符为非空格,而它的前面的字符是非空格,则表示“新的单词开始了”,此时使num(单词数)累加1。如果当前字符为非空格而其前面的字符也是非空格,则意味着仍然是原来那个单词的继续,num不应该再累加1,。用变量word作为判别当前是否开始了一个新单词的标志,若word=0表示未出现新单词,如出现了新单词,就把word置成1。

    下来以同样的思路使用指针和函数写

    #include<stdio.h>
    #include<Windows.h>
    void hanshu(char *a)
    {
     int num = 0, word = 0;
     for (*a != '\0'; *a++;)
     {
      if (*a == ' ')
      {
       word = 0;
      }
      else if (word == 0)
      {
       word = 1;
       num++;
      }
     }
     printf("有%d个单词\n", num);
    }
    void main()
    {
     char a[100];
     gets_s(a, 100);
     hanshu(a);
     system("pause");
    }

    在子函数中把main函数中的a[100]定义成一个指针变量 *a 然后和之前一样定义 wordnum
    输出的结果为

    两个程序的输出结果一样。
    在这里插入图片描述

    展开全文
  • 2 指针计算.pdf

    2019-12-06 23:48:21
    C语言 指针
  • c代码-运用指针计算10个元素数组中最大值最小值并返回在数组中的位置
  • #include<stdio.h> int avg_sum(int*, int, float*, int*); int main(){ int a[10],i,sum; float avg; int *p=a; for(i=0;i<10;i++) scanf("%d",&a[i]); avg_sum(&a[i],i,&...prin...

    #include<stdio.h>
    int avg_sum(int*, int, float*, int*);
    int main(){
    int a[10],i,sum;
    float avg;
    int *p=a;
    for(i=0;i<10;i++)
    scanf("%d",&a[i]);
    avg_sum(&a[i],i,&avg,&sum);
    printf(“avg=%f,sum=%d”,avg,sum);
    return 0;
    }
    int avg_sum(int a[],int n,float *pavg,int *psum){
    int i;
    *psum=0;
    for(i=0;i<n;i++){
    *psum+=a[i];
    }
    *pavg=*psum/n;
    }

    展开全文
  • 片文章介绍了如何利用二维动态数组指针做矩阵运算,需要的朋友可以参考下
  • 利用指针计算一个字符串的长度

    千次阅读 2019-05-17 10:49:47
    #include using namespace std; int fun(char *str) { int m; m=strlen(str); return m; } void main() { char a[50]; cout<<“请输入字符串的值:”; cin>>a; cout<<“字符串的长度为:”<......
  • 使用指针计算字符串长度

    千次阅读 2014-01-01 11:14:27
    题目要求为写一函数,采用指针的方法啊,求一个字符串的长度,主函数中输入一个字符串,输出其长度。 指针一直不是很明白,打算写道题来验证一下。写的一般。 #include #include int len(char * t) { int i = 0; ...
  • 时间限制:1S 内存限制:10000Kb 问题描述: 写一个函数,求一个字符串的长度。在main函数中输入字符串,并输出其长度。 输入说明: 输入一个字符串 输出说明: 输出该字符串中元素的个数。...3
  • 利用指针计算字符串的长度

    万次阅读 2013-06-09 01:47:42
    赋值语句 p = s 是将字符数组s的首地址赋给指针p,就是指针p指向字符数组 最后p指向字符数组的结束符‘\0’的地址,而s为字符数组的首地址 二者相减就可以得出两个地址之间的字符个数,就是被测字符数组的 长度 ...
  • 当把数组名传递给一个函数,实际上是将该数组的第一个元素的地址传递给函数,而指针就是保存地址的变量且根据指针的运算*pa+i=pa[i],根据这个特性可以写出计算字符串长度的函数。 int strlen(char *s) { int n; ...
  • #include #define N 20 unsigned int Mystrlen(char s...函数功能:计算字符串的长度 / unsigned int Mystrlen(char s[]) { char *p=s; while(*p!=’\0’) { p++; } return (p-s); } 主函数是加上去的
  • 编程:输入5个整数作为数组元素,分别用数组和指针计算并输出数组元素和。 #include<stdio.h> int main() { int a[5],i,*p; int sum=0,t=0; printf("请输入5个整数:"); for(i=0;i<5;i++) scanf("%d...
  • 指针的加减法计算

    千次阅读 2018-07-16 00:12:11
    (1) 指针++:(p++)表示加一个单元格(单元格的字节随类型而定)#include&lt;stdio.h&gt;int main(){int arr[10]={1,2,3,4,5,6};int *p = arr;p++;printf("%d %d\n",arr[0],arr[1]);...
  • C语言数组指针偏移量计算

    千次阅读 2018-06-13 19:42:54
    其实差别挺大的,因为第四个编译器会识别成指针之间的计算,而指针计算其实内部会有长度的变换。 我对数组指针的加法比较熟悉,但是对减法却认识不够,比如int a[10],如果a+1我会知道这个是指向了a[1],但是对&a...
  • 指针求平均数

    2012-09-10 14:59:08
    指针求平均数
  • 指针输出数组元素,并计算它们的和与乘积 纯记录学习指针的成长过程。 #include <stdio.h> int main() { int i = 0,j,*p,*q,num; int count = 0; int sum = 0; int mul = 1; printf("please enter a ...
  • C语言指针实现计算平均分等功能

    千次阅读 2018-10-27 22:08:51
    4个学生5门课数据自己输入,输出第一门...里面涉及大量的指针的定义使用,多敲点这样过百行的程序为以后大程序打基础。代码如下: #include&lt;iostream&gt; using namespace std; int main() { void av...
  • } /*该函数读入一个年份和天数,并通过形参指针将结果写入主调函数*/ void GetData(int *ptrYear,int *ptrYeaday){ scanf("%d%d",ptrYear,ptrYeaday); } /*该函数根据年份yeaer和当年第几天yearday,计算出这一天是...
  • 利用指针-指针来求字符串长度

    千次阅读 2021-02-20 10:36:47
    利用指针-指针来求字符串长度: 指针-指针得到的结果是两个指针之间的元素个数,但是要注意,相减的两个指针必须属于同一个空间。 #include<stdio.h> int my_strlen(char* str) { char* start=str; char* ...
  • go如何进行指针运算

    千次阅读 2020-04-01 19:08:50
    4// 这个没啥说的, int32在64位机器上占4个字节 16// Sizeof(string)占计算string header的大小, struct string { uint8 *str; int len;} 16// 这个涉及到内存对齐的问题 8// 指针占8个字节(64位机器) Offsetof 返回...
  • 结构体占用内存在好多地方被提及到,特别是在C语言大型开发项目中,利用指针加偏移量来定义一个新的指针。另外在校招中也经常被提起,这几天刚好有人问,拿出来研究一下。 在讨论结构体内存占用情况之前,先说明...
  • 经典的C指针练习题,和大家分享。希望大家多多关注
  • 指针数组 首先从名字就可以知道这是一个数组,是存放指针的数组。 先看几种指针数组: int * 数组指针 函数指针 函数指针数组 指向函数指针数组的指针
  • C++ 指针实现矩阵相乘

    千次阅读 2020-04-15 20:55:46
    编写函数,使用指针传递和指针运算,实现两个矩阵的乘积。 编写主程序,输入两个矩阵,调用函数计算它们的乘积,在主函数中输出计算结果。每个矩阵的元素总个数不超过100,但行数、列数不定。矩阵元素为整数。 输入...
  • 计算所有学生的总成绩以及找出所有学生中两门课总分最高的学生的数据。 编程思路:首先定义包含学生信息的结构体类型,根据该类型定义有10个元素的结构体数组。在cal函数中计算出总成绩与最高分学生在数组中的索引...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 604,111
精华内容 241,644
关键字:

指针计算