美文网首页C语言
2021-03-31(指针)

2021-03-31(指针)

作者: 张轻舟 | 来源:发表于2021-03-31 17:58 被阅读0次

地址:
内存地址是连续存放着的,地址是一
指针(变量):存放地址的容器/指向地址的变量
int a;
int *p;//定义一个存放整型变量的p,int *是定义
p=&a;
int b;
char [20];
printf("%d %#x\n",&a,&a);//输出的&a和p一样
printf("%d %#x\n",p,p);
printf("%d %#x\n",c,c);
//三十二位环境下指针所有类型都是四个字节


指针存放的地址上的值 p
printf("%d %#x\n",p,
p);


指针的运算
int a =10;
int b=20;
int p=&a;
printf("%d %d %d %d\n"&a,&b,p,(p-1),
(p-1));
return 0;

image.png

一个指针加一减一移位大小是以它指向类型大小


int a[10]={1,2,3,4,5,6,7,8,9,0}
int p;
p=a;
for(i=0;i<10;i++)
{
printf("%d",
p);
p++;
}

image.png

char str[200]="string";
char p2;
p=&a[0];
p2=str;
for(i=0;i<strlen(str);i++)
{
printf("%c",
p2);
p2++;
}


输入一行字符,分别统计出其中英文字母、数字、空格和其他字符的个数。

include<stdio.h>

int main()
{
int letter = 0,number = 0,blank = 0,others = 0,c;
int p;
p=&c;
while((
p = getchar()) != '\n'){
if(*p >= 'A' && *p<='Z' || *p >= 'a' && p <= 'z')
letter++;
else if(
p >= '0' && p <= '9')
number++;
else if(
p == ' ')
blank++;
else
others++;
}
printf("%d %d %d %d\n",letter,number,blank,others);
return 0;
}


int rev(char a[]//char *a,int b[],int *c)
{
printf("%s\n",a);
return 0;
}
int main()
{
char str[200]="nice";
int a[100]={1,2,3,4,5};
int x;
rev(str,a,&x);
return 0 ;
}


//##sizeof 求字节内存大小
int a;
b=sizeof(a);

输出int、char、float、double、long long这五种数据类型的占字节数,空格隔开,共占一行

#include<stdio.h>

int main()

{

    int a;

    a=sizeof(int);//特别注意的是sizeof返回类型都是int 型

    printf("%d\n",a);

    //char w;

    a=sizeof(char);

    printf("%d\n",a);

   // float f;

    a=sizeof(float);

    printf("%d\n",a);

   // double d;

    a=sizeof(double);

    printf("%d\n",a);

   // long long i;

    a=sizeof(long long);

    printf("%d\n",a);

    return 0;

}
image.png

若一个正整数从左向右读与从右向左读都一样,我们就将其称之为回文数(例如12321、44、3都是回文数)。输入一个正整数,判断它是否是回文数,是则输出YES,否则输出NO。(提示:以字符串形式读取输入的整数)


#include <stdio.h>

#include <string.h>

int main()

{

int i,n,j=1;

char a[1000];

gets(a);                       //输入字符串

n=strlen(a);                //计算字符长度

for(i=0;i<n/2;i++)      //将字符串分半

{

if(a[i]!=a[n-i-1])         //分半后前一个不等于后一个就输出NO

{

   printf("NO");

   j=0;                        

   break;                    //跳出循环

}

}

if(j)                          // 如果j不等于0就输出YES

printf("YES");

return 0;

}

MessageBox(0,"","",0);
//##字符串比较大小函数strcmp
char str[100]="word";
char str2[100]="world";
int a;
a=strcmp(str,str2);
printf("%d\n",a);
return 0;
//相等的时候为零
单个字符的ASCII相比较

相关文章

  • 2021-03-31观影、听广播随笔

    2021-03-31《京华烟云》 2021-03-31《静说日本》 我的“Best 3” 2021-03-31《漫...

  • 2021-03-31(指针)

    地址:内存地址是连续存放着的,地址是一指针(变量):存放地址的容器/指向地址的变量int a;int *p;//定...

  • Removed 7 duplicated variants

    R version 4.0.5 (2021-03-31) -- "Shake and Throw"Copyrigh...

  • BiocManager::install("CATALYST")

    R version 4.0.5 (2021-03-31) -- "Shake and Throw"Copyrigh...

  • bitshares比特股数据20210331

    2021-03-31比特股BTS大额转账的记录 时间转出转入BTS数量04:26:42binance-bitsha...

  • 2021-03-31 亲们,简书很少更新啦

    2021-03-31 亲们,简书很少更新啦! 有和简书内容相关的问题的话可以发邮箱: haifengsun123@...

  • 出行 | 小贴士

    2021-03-31 自制饮品 燕麦豆浆粉 补充异黄酮,增加雌激素,平衡激素;性寒。 红茶(普洱茶)蜂蜜 发酵茶更...

  • 3月最后一天

    2021-03-31精进第71天 | 没有记录就没有发生 2021年的事业梦想个人目标描述:达成MDRT业绩目标5...

  • 混淆知识点

    1、指针数组&数组指针、常量指针&指针常量、函数指针&指针函数 数组指针&指针数组 数组指针的定义 int (*p...

  • C语言

    C 指针、指针变量、函数指针、指针函数、指针数组、数组指针、C 数组

网友评论

    本文标题:2021-03-31(指针)

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