真爱无限的知识驿站

学习积累技术经验,提升自身能力

标C编程笔记day01~day03 变量、运算符、指针、函数、输入输出

c/c++语法,运算符:

    sizeof()  --参数为变量或类型,计算变量或类型的字节大小

    a==b?c:d  --三目运算符,a==b时,返回c,否则返回d

    算术运算符:+,-,*,/,%

    自加、自减运算:++,--

    位运算:

        ~ --取反,正数取反为 -(n+1) ,负数取反为 n-1 

        & --与,两个同为1才为1,否则为0

        | --或,两个同为0才为0,否则为1

        ^ --异或,两个相同为0,两个不同为1

        <<n --左移n位,等于原数乘以2的n次方

        >>n --右移n位,等于原数除以2的n次方

&[变量]  --取变量的开始地址

*[地址]  --取地址对应的变量值

%p       --printf中用来输出地址格式的变量

如果输入缓冲区有垃圾数据,可用下面方式取走:

if(scanf("%d",&data)==0)//读取失败返回0

{

    scanf("%*[^ ]");//读取掉 之前的所有字符

    scanf("%*c");//读取掉

}

控制台程序屏幕输出字符的条件:

    1、遇到

    2、程序结束

    3、输出缓冲区满(4K)

    4、人工刷新fflush(stdout)

数组元素初始化:

    int a[5]={1,2}  --第1,2个值为1,2,其他值为0

    int a[5]{[3]=10,[4]=20}; --下标为3,4的值设置为10,20,其他为0

    int a[10][10]={{0}}; --定义并将二维数据里值全部设置为0


屏幕显示颜色设置:33[显示方式;前景色;背景色m

    默认设置为:33[0m


数学函数头文件(编译时,可能要加 -lm 选项):

math.h

    sqrt()--平方根

    pow() --n次方


生成随机数:

#include<time.h>

#include<stdlib.h>

srand(time(0));

int data=rand()%100;--生成100以内的随机数


指针基本操作:

int a=10;

int *pa=&a;//pa取a的地址

int b=*pa;//b取pa地址上的值,b的值变为10

int arr[10]={1,2,3};//不可使用*arr++来取值,因为arr是地址常量,不可变

int *p=&arr[0];//或int *p=arr; //取数组首地址也就是数组第一个元素的地址,可用*p++循环数组,也可用*(p+i)来取第i个元素的值。


控制台基本输入输出:

char name[20]={0};

fgets(name,20,stdin);//获取输入的最多20个字符

//scanf("%s",name);//获取输入字符,但不能读取空格

char *s="abcdef";

printf("%s",s);//这里要传入的不是值(*s),而是字符数组首地址(s)

字符串(字符数组)操作函数:#include<string.h>

    复制:char * strcpy(char* dest,char* src);//返回desc的地址

    追加:char * strcat(char* dest,char* src);

    长度:strlen(char * str);//返回字符串长度,不包括''

    比较:strcmp(cahr * s1,char * s2);//相等返回0,s1>s2返回正数,否则返回负数


入口函数参数及数据:

    int main(int argc,char* argv[]);//argc为参数个数,agrv为各参数值,类型为数组。


发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Powered By Z-BlogPHP 1.7.3

Copyright 2024-2027 pukuimin Rights Reserved.
粤ICP备17100155号