短路运算|字符串操作函数|内存mem操作函数

body, table{font-family: 微软雅黑; font-size: 10pt}
table{border-collapse: collapse; border: solid gray; border-width: 2px 0 2px 0;}
th{border: 1px solid gray; padding: 4px; background-color: #DDD;}
td{border: 1px solid gray; padding: 4px;}
tr:nth-child(2n){background-color: #f8f8f8;}

2016—4—25

#include"string.h"
strlwr()把字符串中大写换成小写
strupr()把字符串中小写换成大写
#include"stdio.h"
#include"string.h"
#include"stdlib.h"
int main()
{
        char a1[]="Hello World";
        char a2[]="yun nan";
        char *b1=strlwr(a1);
        char *b2=strupr(a2);
        printf("%s\n",b1);
        printf("%s\n",b2);
        system("pause");
}
aaarticlea/png;base64,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" />
2016—4—26
\r   换行,会到本行开头(Home)
\b   退格,光标后退一格
C语言只有字符串变量,没有常量
2016—4—27
float 有效位6-7位
double  15-16
long double  18-19
long long  8个字节
vs (ctrl+k,ctrl+f)可以自动控制代码格式对齐
~按位取反
^按位异或    1010       &按位与    1010
                      0111                        0111
             ------------                 ------------
                      1101                        0010
计算机中数都是按补码存放的,正数的二进制就是原码,反码和补码全都相同;负数的原码是二进制表示,反码为原码最高位不变其余各位取反、补码为反码+1;
#include <iostream>
using namespace std;
int main()
{
   int a=4,b=3;
   cout<<"~a="<<~a<<"   ~b"<<~b<<endl;
   cout<<"a^b="<<(a^b)<<endl;
   cout<<"a&b="<<(a&b)<<endl;
   system("pause");
  return 0;
}
aaarticlea/png;base64,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" />
4-------0000 0100  
~-------1111 1011  负数,计算机中存的是补码
反码---- 1000 0100
补码-----1000 0101    -5

 -------------------------------------------------------------------
计算机中都是按补码运算的,int a = -11 ;  ~a = 10 ;
1、a 在计算机中是按补码存放的---> 1000 1011 ==》1111 0101
2、进行取反操作--->  1111 0101 ==》0000 1010  就是十进制的 10
短路运算|
短路运算符就是我们常用的“&&”、“||”,一般称为“条件操作”。
If(a>b||printf(“a小于b”))
如果a>b就运行下面,否则输出printf;
#include"stdio.h"
#include"stdlib.h"
int main()
{
        int a=10,b=3;
        if(a>b||printf("a<b\n"));
        if(a<b||printf("a>b\n"));
        system("pause");
}
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAP0AAABKCAIAAAD/mMVmAAAAA3NCSVQICAjb4U/gAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAKb0lEQVR4nO2dzW8jSRnGX3uTSWYXzUx2BmkQCOxZE+L1IhBCCAkJpQdFyLlZ8QEhTj7k4FzjQ/wH+OK9sJAcRkofWIZdNNZ4NYJ4V5HSWZaVOA8yLYWAG9iBmR1tEudjktiTNId2t6urq8plj+3Y0+/v5FS/XfV21VPVT5c/Enjwx49qtdoH9+6+e/c9QBB/EDTPTTDNi04DQfpK0AQTZY/4jaB5bprm+UWngSB9JWiCeY4LPuIzRkxTyt8//Gt5d3dXpsZr1659+603g8HgC+eGIL1ixDSl/P32PyrfCN8C8IYGAgEAgEePv7Dmz3+f/P1rX/3K9evXu50qgnSNETDBZKiZZuL1ibeiEcEMefNbEQAIBOCTT/9yenraxRSRrmKoyfj2gp5TLjqRCyUIADI+ZyQYMP71+S/vfvrOe3/+1e8/+XXhTyvFjyv/fHR8dPD0yeOnTx4/Ozp496OHv/nwobAaLRu1yWru8qRqyMe/OMwWneaIQ4aa9KbQzIsZSRQyI5kN2eV0Ws0ashojbSK/HnQTC9FgMQ8MIEHJ3XvTNAOBV4zqoXFw+O/j/f+cVj+r79XrZ+DeC3rlEn9rSMtGo2lY0RvMrBN9pMxnYG3DkI63MNRku+PsnOJt0VCT6a1MSdd1fWUyH7cq1rLx/KSVw0qimLYLlyMlKyt25GR+0cqVGclsyJLvOiQ8nebUoOcUZkcBJJxeWoF0z7XP7DpW8gOM7NPnaa0OAF++MRa4VK/W95+efPH4+HMAAAiY0HBK4xMnr9444lSgZdPFxApxe1VyhVTIORy6PevuyxbxLw7dorGxVk4sWE0o85lYcb2hnsSMlYMyk4CtiuFOxSnU1ouxzHwj0hEGK5LdUChV0HU9N+PK0VCXtzJvuy7b01FulJxeymyle6t8Tw7M5Aea9nZd/vbks8re//ae7x3DQS1wCAAAJoAZgAAAvDZx+OqXDtlnkrIgMdSkdW8M3Z6F/B2tVTxRYzYaz5ehmHZurgxL4TYp7lOoFivbZVvhAKHwpCVSZT6ztdyofr1oy9V1XTAZpgoBAMrbFU4kuyEWxsYazMId90VRaXsJ3Z5tTlq2zaLME4D73um6jxKWTLUNTsscaOg0DDXptKxlXS+Z/q/rtKf7EzgavVwfGa+PjNVHx2sAABCwRA8AUze+Hrn2RqeZhFILCWe4JFByeikTg8SKrhdSIZchKM2uxbMagKEu2tbDMgnuU1wtGpUtXkvlfDwajUbTxVgk7DpgqMl0MbGSUwAgHImVbSlod/Jl4EUKGqKpbJfL+e0Z65oy0DBP8h3F6hMAACim12d0yrzxanCs5tuwVrTL2xosRhqhVGElUVxWDdCy6a1MKacIsu0F7el+5HJ9dLw+OlYbHauNXqoBuPaCIhO3IhO32ms/lCrothVQZtoSvgttvWjrMxqN58uwVTEgFJ6EYlqwdhAthsKTjABDXcxDxuPQwVqx4muzJduJWSOZjkaj0ehyJJNozhEqkt0QD+emF0otJMoNc9G6o2KRMKdPAACgMVeBcnQeXHfdUGqB8O/yg8VJQ8mtTObj0bRt5PjZ9oL2dD86VhsZr42O1S6NnTZ078jehPrz58fHJ+wzlRln1PgoM9YaIBvvJmbrU9d1a0EHJWctVIu8OyfRIgDR00ZlCybDIdKKkwZfy0bj2wu67n7isFrTdb0Q3i42zA870tMQ+4rCkRj7gDttCu1OHmZvW1Uy+qRbCHOgkEyjh9nSSOs+EDg9Pf7BjTe+f+2b37sy+d3Xot+5HDs9PXaOm6Z5fnZ2ds7bz1HmM5CPuzb4kqrR9PdOkL2mseN5KDOJctNxatmsBgCGqjYeGUuZmMdwUy0q8xkgjApk5hXLKjuDazt0Q10uNldML1o2vWWtksxIVkNsQrdnbXMDhrpcjNly5mzrgGVM7BWU2ScAANB0d+pivvm00ZiOxsZaw6a5ajDUZcfnCHOwwxsjy0nDMjhN+8bPtifcu//g7vuFX/z8Z6aQD9e1er22X93Z39vZ39s52N8/2N87qO4ePzs6OX52eHhQrVZ3d3d2d3fWNz5+9OgRu5aNpSmHpQ3TNM3K6tzU3GrFiaiszhF/euPdVFbnpqamGhU0/nDFNiuwi1ynUC02ayAaI3JolJJZNcubJzfrZkdyGrLPILuDdQVU2sRlu9qmGnJ1wNISo1Yndm5paY7ur6mpqbnVVSo592BRyZMj60ljY8lJtbI6R4pBMNrdJHDv/oNarVZ6UBB/7+T+B3+4cvWKtzwYDAaDwfOzM+fDbTs7Oz/+0Q9v3rzZ2Tzs/9uJQ/oG5gWkbT15Ev5jSLsOAEYk4+I//Um1Wj3n2pgmwWDw6tWrHScUSi0koutaTulbX/a/xa7Ql7QNNXknXLB0rWXTxVimFOp3Dj1Bdr1HfIqhJuONXdlYptTTZ81+IrveIz4llCroqYtOovvgp+QRP4K6R/wI6h7xI6h7xI+g7hE/grpH/AjqHvEjqHvEjzTft2r8HgiC+ABc7xE/grpH/IiU7jc3N3ucBoL0FSndT09Pe6W/ubmJ8wEZUmR9jlf609PTXc8GQfpDG/6eueojyDBC637ThhmNhgd5SXC+Vw7u51eBlJ1DpOJR+sgQ4VrvHcsuFj3p7J3X6IKQIYLtc3jPrIJDCDJEuL5fK5Y1ih55aWDv5zAfXpmiJ/09zgpkWKD9PelzZDRNnYIgQ0Hz93N++7v3LzoZBOkT+Lk0xI+g7hE/grpH/EgXPofM3PzpoEKZt706q1l8qN1kOk4eGRza2L+Xx9rkka9KsHHUclJ1cR8Jd6X8g0v3pF4peZF/dkscMnU6yXjng+BNZSA+N0F+gMIpkamHVzl1uvc1Tp7Bh/t7yB2IQ3KqOLXJfBzIOZ3MQZyP9yND5ORp6dkkJ5hVLpkSMmjQupdfzKijlJRJOvO+YofDdDtM8XnPIu9p1AvxBENxvzSIfv9evJhRR3lyERgDMZ0pjJyfTNVSRs7rfHivyXhw2yeq6Y6TR/pGU/fUii4YVGCNq9igvwiCqSKQNbMGpjR5txGqQ7wzmXdpnd3fkH7S1D0l9w6e9iR9yObmptjDeFuXsU9eX+60KHZBzAVebOuZJYKJhwwaIp/DXLeY8iLXPxnDw5NOW5nwYsiUKHNCuRqBuJlHeX5PcGnIYNLi/1sxVU6+9tpcyaraQn69p1Zf5iHydO/9jVy2qXlLNeoEoNaHjha6l/TWZHwvRPAijpln2ZmexGt7SDfvjUdjM6R0vt7z4sn7QFcE0dKWCDKhFnivanltMUt4veF9gTNhwGHrnnQL7dbINBWdQZkNmRVaUChoBdpRKlPczIfazmruXTziwNC9+AFUplKmCLqO462Z67o3B961SCYpiBfPzAGBN3aDmW2vYehe3riLC8UioIaBel7kVS4zSN5bBDOGd/fgpcS7HPEjQctsqax6Go84iL5n2NIfU4XM266kMxEzmGsVz2YM5pI/mH14UeD3a/0C6p4keNEJIMgF0GIfE3lp8Oe6zgPXe8SPoO4RP4K6R/wI6h7xI6h7xI+g7hE/grpH/AjqHvEj/wco3Na8QozH+QAAAABJRU5ErkJggg==" />
2016—4—28
#include"stdio.h"
#include"stdlib.h"
#include"setjmp.h"
jmp_buf envbuf;  //定义变量
int ret;
void sum()
{
        printf("ret is %d\n",ret);
        printf("I am sum\n");
        longjmp(envbuf,1);
        printf("I am not here\n");
}
int main()
{
        ret=setjmp(envbuf); 
//跳转函数,ret=0;跳转后longjmp的第二个参数就为setjmp的返回值
        if(0==ret)
        {  sum();  }
        printf("ret is %d\n",ret);
        system("pause");
}

aaarticlea/png;base64,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" />

2016—4—29
char *strncpy( char *to, const char *from, size_t count );
//将字符串from 中至多count个字符复制到字符串to中。如果字符串from 的长度小于count,其余部分用'\0'填补。返回处理完成的字符串。会覆盖
char *strncat( char *to, const char *from, size_t count );
//将字符串from
中至多count个字符连接到字符串to中,追加空值结束符。返回处理完成的字符串。
int strncmp( const char *str1, const char *str2, size_t count );
//比较字符串str1str2中至多count个字符。str1比str2少,返回小于0的数;str1等于str2,返回0;str1大于str2,返回大于0的数 。
eg:strncpy(str1,str2,count)    strncat(str1,str2,count)    strncmp(str1,str2,count)

void *memset( void *buffer, int ch, size_t count );
//函数拷贝chbuffer 从头开始的count 个字符里, 并返回buffer指针。
memset() 可以应用在将一段内存初始化为某个值。
memset(str(int),'\0'(0),sizeof(int))   //字符串(整形)数组置0,不要置成其他字符

void *memcpy( void *to, const void *from, size_t count );
//函数从from中复制count 个字符到to中,并返回to指针。
如果tofrom 重叠,则函数行为不确定,复制从第一个开始,会产生覆盖。
eg:  memcpy(str1(int),str2(int),size)         int a[10],int b[10]={1,2,……},memcpy(a,b,sizeof(b))   ->   a[10]={1,2,……};结构体拷贝

int memcmp( const void *buffer1, const void *buffer2, size_t count );
//函数比较buffer1buffer2的前count 个字符
eg:memcmp(int,int,size)(这个只能比较内存(整形、浮点型之类)的)

void *memmove( void *to, const void *from, size_t count );
//与mencpy相同,不同的是当tofrom 重叠,函数正常仍能工作。
eg:memmove(str1,str2,size)  自己往自己身上拷贝  abcde->deabc
全局变量   int a;  外部文件引用extern int a;      //比如我的.c文件里有定义全局变量,头文件里要用,可以直接extern引入。
全局变量   int a;  想要只能自己文件引用  其他文件不能引用,static int a;
定义好一个局部变量的字符数组最好要把它初始化为空--》char sstr[10]="";  或者char sstr[10]={};
main函数中的 argv[0] 表示的是 .exe 文件
上一篇:DL基础补全计划(五)---数值稳定性及参数初始化(梯度消失、梯度爆炸)


下一篇:一起撸个简单粗暴的Tv应用主界面的网格布局控件(上)