C语言深度学习——第一天
首先声明一下,在我们写的程序中,会使用到一个头文件# include <head.h>
因为,在linux系统编程的时候,会用到很多头文件,为此,我用一个头文件全部包含在一起,头文件内容如下:
# ifndef _OK_ # define _OK_ # include <stdio.h> # include <string.h> # include <errno.h> # include <stdlib.h> # include <time.h> # include <unistd.h> # include <sys/types.h> # include <sys/stat.h> # include <fcntl.h> # include <sys/types.h> # include <dirent.h> # include <pwd.h> # include <grp.h> # include <pthread.h> # include <semaphore.h> # include <signal.h> # include <linux/ipc.h> # include <sys/socket.h> # include <netinet/in.h> # include <arpa/inet.h> # include <sys/wait.h> # include <netdb.h> #define LOG(...) {char _bf[1024];snprintf(_bf,sizeof(_bf),__VA_ARGS__);\ fprintf(stderr,"%s",_bf);syslog(LOG_ERR,"%s",_bf);} #endif
编辑好了之后,放到/usr/include/下即可。
1. 使用__FILE__,__FUCTION__,__LINE__等宏能自动定位到程序执行到哪一个函数的哪一行,作为一个经典的调试方法,很容易被人忽略,也很重要。如下:
#include <stdio.h> void test() { printf("%s %s %d\n",__FILE__,__FUNCTION__,__LINE__); } void test_1() { printf("%s %s %d\n",__FILE__,__FUNCTION__,__LINE__); test(); } int main() { printf("1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 = %d\n", + + + + + + + + + ); printf("%s %s %d\n",__FILE__,__FUNCTION__,__LINE__); test_1(); return ; }
打印:
aaarticlea/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAoHBwgHBgoICAgLCgoLDhgQDg0NDh0VFhEYIx8lJCIfIiEmKzcvJik0KSEiMEExNDk7Pj4+JS5ESUM8SDc9Pjv/2wBDAQoLCw4NDhwQEBw7KCIoOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozv/wAARCABTAikDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDiorDSrjwXeX8UFwt/aTQo8jygo28tkBQOOnc1g11GmHRE8IX1jca7HDdXrxSiM2srbNm75SQMHOe1cv3rXqzsQ6OKWZtkMTyNjO1FJP6Vpa1oNzo0sSusrpJbxzGQxFQpdc7T9OlUbS9u7Cbz7K6mtpcEeZC5RsemRWz4i8V32tGKMX16bYW0UcsMspKu6qNzEZwcnmhj1uYFamkyaHDBI+p2V3fXLSBYoIpfKXb3JYAknPAFZddT4Qn0GwhuL+91JLbVVO2z822eWOL1kwo5b0z060xS2MzxRpMOieIbrT7eR3iiKld+Ny5UHa2O4zisnrV3WBbjVJjbag+ooxDG6dChkY8scHnrnrVIEqwYEgg5BHakthmsPDt6dBOqeTPuFyIPJ8hs427t307VkkEHBGCK6QeNdXHh02P9raj9rN0JRN9ob/V7cbc5z15xXOMzOxZiWZjkk9SaOoK9tSWza1W7ja9jlktwcyJEwVmHoCelbniTSbG00rTtQt7K40ya7Zw1lcSF22LjEgJAODnHPpWPp0VjNepHqN1Ja27A5mjj8wqe3y9xW1r2pWB8P2ej2upS6tJDO0xu5ImQRqQAI1Dc47mhi+0c3WpomhXOtXDxosqIsMkokERYEopO38cYrLre8OeKr3Q5WQ314LXyJUSGKUhVdlIDYzjgnNPoN36GHJDLC2yaJ4mxna6lT+tNqe7vrzUJRNfXU11KBt3zOXbHpk1ADgg4BwehoA6dfDtnB4KutQuvM/tMCKaJA2Fjid9o3DuWwT9MVzFd5/wluk6l4c1g3trp1rqV4iIkaRTNv2dCTnaMDp6d64Okt2KN7akkME1w+2GGSU9wiliPyq/r2iXGh6nPZyCR0iYATGIqrZAP9aq2OpX2myGSxvJ7V2ADNDIULD0OK0/E/ia71/Urh/tl21k7K0dvNISqkAD7ucdc0MetzDrrvDvhO01XQF1GW31W7le4eER2HlfKFAOTv6k57elcjW1pFto8kMU974gmsJYpdzQrbO5IB4KMDjP1xTFK/QyblFiupY1SRFRyAsow64PRvemKrMwVQWYnAAGSa0fEeqR614hvdSiiMSXEpZVPXHTJ9zjJ+tZ8UskEqSxO0ciEMrqcFT6g0ltqUzTuPD15b6LaakYZybiSRGi8lgYwmOSffP6VlV0d14z1WfQbOxXVdQFxFJKZ5DO2JFbG0Zzk4wevrXOUCV7amv4Z0P8At7Vvs7vIlvDE007RrucIvZR3YnAH1pviCG2trxbeDRbrSig+ZLqUu7jseQMfhVjwlrcWi6jc+fLLBDe2r2zzxDLw7ujAd8EU/wAR6lZT6ZpWl2l7JqJsFk33kkZTduOQgDc4Hv60PdCV7nP1qaXoF1qdtezrHMi2tsZ1IhJEuCBtB/H9Ky66DRfFuo6XZXtqdQvtkloYbZY5iFhfcCCBnjgHp60+g3foYMkckTlJUaNx1VgQR+BoiEZmQTFljLDeVGSFzzj3xT7m6ub2dri7uJLiZvvSSsWY/UmoqAOlm0zw1Poeo6hp0mrKbQokZuTHskZjwMAZ6An8K5qti+v7RfC+naVZyFn8x7m8O0j94flVffCjr71j0gWxa0+wn1G8it4Y5GEkiozohYJk4ycU7VdMn0rUbi0lSTbDK0ayNGVD4OMjNS6NrV7o17FLbXlzBF5qPMkMhXzAD0OOvFP1/XrzXNRuJZry6ltmneSCKaQsIwTwAM4HHpQ+lv62BXuzLrs9A8Mafe6Zpkr6deaib+R0uLi3m2LY4OORjGcfN83GK4yu00XX9Ni07R1fWLnS20t2ae3hhZhd5bOQRxkj5Tu7UyZ36HIXcUcF5PDFMJo45GVJB0cA4B/Go0R5XCRozseiqMk/hU9/cR3eo3NzDCIY5pWdIh0QE5AqO3uZ7Sdbi2mkgmQ5WSNirL9CKUdlct+Ro6joF3p9hY3bRzMLuEysPJYeVhiuCfwz+NZVdDq3i/UtR0uwsxqV/wDurdoroPO2JiWJyeeeCBzXPUdRK9tTd8O6ZY3Njqmp38E11Fp0SOLWF9jSFmxktgkKOpxTfFOiw6Rc2ctrHNFbaharcxxTnLxZ6qT3weh9Ki8OzLbX7TnXX0cov+tjid2cHqoC/wBeKl8V68uv6pHJEZjb20KwQtO2ZHA6s3uSSaHuiVfmf9djErVs/D95d6RfagIp1+y+Xtj8lj5u844PtWVXRWPjLVLTQ76xbVNQ82byhbOs7YiCnkDnjI44p9Cnfoc8ysjFHUqwOCGGCKWPZ5i+YGKZG4Kecd8e9LNNLczPPPK8sshy7u2WY+pNJEqvKiPII1ZgGcgkKPXAoQG34msNNs4dJudLhmhivbTzmSaXe2d5XrgelamneHtEYaTpV7HctqWswedHcpLhLctnyxsx82cc/WqniV9Gn0jSo7DWkuprC28hoxbSJvy5bILDGOau6druibtH1i9upo7/AEaDyhaLCWFwVyYyH6KOec+lT0fr+Gv/AACHey/rU46RGikeNxhkYq31BxU1hp93qd0trYwNPOwJCKRkgdetQySNLK8r/edix+pOan0+9bTrtblILecqCNlxHvQ59qa21LfkXrzwpr+n2r3V3pcsMEYy7sy4H5Gsitm98SzX1pJbNpelQiQYLw2uxx9DnisahXBXtqdL4U8NWuuWN/c3Ed/M1q8arFZGMMd2eSX4wMfrUFroNvdeNodDaO+tIZJxEy3AUTrx37Z9Kp6XaaZdwyrf602msCNo+zvIrj/gJ4I+laGtanp2teIbX/S7iCzt7eO2+2NHulfYuN5UHPJ984o6k66ieJ9Ct9GigaCw1a381iN995ZRsdlKd/Y1z1dJqF9pdh4Wk0Sw1GTU3uLpbh5TC0aQhQRhQ3JJzyfaubpIpbBRRRVDCiiigAooooAKKKKACiiigAooooAKK7PW4PDCeGtDffqKlreUxMsUeXO8/f59f0qt4f8AC1reaD/bN9vmWScww28d1Hb52gFmLv8AUcAUu5PMrXOVorq7jwxpEXiixsf7VVLK7i8x8zIzwNg/u2ZSVySAA3TnNO8R+G7PS9DhvE0y/tJmuAjM91HcxFMdmTo3saLhdXsclRXZa/D4ZTQdFYPqKu1k5iKxRjf87ff59f0rjQCxwoJPoBmgad1cKK1vDujw6vd3BupnhtLK2e5uGjGXKLjhR6kkCpr4eFZtGlm04X9tqCyqq29zIsiuhzlgQo56cUML6mHRRXbaH4d8MajpmlG7Gpx3V/56GSKVCiGIbidpGcEcYzR0uJuxxNFda/hjTrnWdMOnR3babe2hu5FmmRXhRSQxLkbQOM5x3qHxNoGk2WkWuqaRc+ZFLO8EiC4E4UgAg7gq+vTFF/6/AE03Y5z7NP8AZftXkv8AZ9+zzdvy7sZxn1xUddDcx2r+BIbi0a9i2XwjmhknDxO+zO9VwMHt3qTT7Dw2nhVNX1SLUXlW7Nu0dvKqiT5d2RkfLgfXNHf+u3+YX0RzVFafiTSo9F12exglaWFQrxs4w21lDDPvg1mUJ3KF2OEEhRthOA204J+tNLAdSBXU3l/d33w3gF1O0og1Py4g3RFEXQUzwjq2sG9tNE0+eKCGaffI5gRmC9WJJB4ABo6tEt+7c5oHPSir+vaguq69e3yIqRzTMyKoAAXoOB7VQoTuigooopgFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAbdl4ontNOgsptN0++S2LG3e6hLtFuOSByARnnnNMsfEtzaW81rPZ2V9aTSmY29zFlEk/vLggr6ccVn3NhcWlpaXcyqIrxWeEhskgHac+nIquAScAEn0FImyNqLxTdQ6zDqcVjp8ZhjaJLdbcCLawIII79TyTTL/xFLeaa2nQWFlp9tJIJZUtYyPNYdCSSemTwKyKCCOqkfUUWQ7I3LPxVPbafb2c2m6dei1DC3luoC7RAnJA5wRnnkGodB8R3nh7WG1S0it5JmVlKyx5T5uuAMY/CqN1YXFnbWlxOqrHeRmSEhs5UErz6cg1Xo6ismi/p+tXumao2o2rIsr7g6FAUdW+8pXoQfSp9T8QyahZ/Y4tN0/T7cuJHS0h2l2HQliSfwzismggjqCPqKLDtrcK37Lxfc2Ftp0EWnWJ/s5naN2Vyz7xht3zc59sdKwKswWFxcWF1fRqpgtNnnEtgjccDjvzQDSNWHxfeQC0VLOzKWsElsUZGKzQuclHGeQCeMYNN1DxVNqGjjSW0zT7e1STzIRBEVMR74Oec985rDzQQQcEEH3osFkjoh4uQaZ/Z3/CO6R9n3+Zt2yffxjd9/riqK66w0BdGOn2jQrcfaPMIbeW+ucYxx06Vl4OM7Tj1xVmKwuJ9Oub9FU29qyLKxbkFs4479KBWRZ17Wpdf1H7dNa29vJ5aoVgDBSFGAeSecYH4Vm0UUbDN0+KQdC/sf+xNNEG7fvCyb/M27d+d3XH4Vn6Zqs+ktcPbKhkuLd4N7A5RW4JX0OOPxqxeaBLaaFBq/wButJ4ppfKMcLlmjbbuw3GM47VlUdwVraBRU1nbfbLpIDPDbh+ss77UX6mrGt6TLoWqy6dNNHM8QU+ZFnawYAjGeehoAo0Vv3Pg+8tdOkuWu7R7mCFbi4sUY+dDG2MMeMdxkA5GawKATvsFFFFMYUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFAHokt14l1zwto7aTawXSmKWK6KW0WIm3nrkfJxz2pnhSH7P4XnXTobuXVkvWS6/s54/PWMD5cFgcpnP3e9efhmUEK7AHqASAaFZkOUYqfVTilbcjl0seiOs0/j/S2Giqt4LZjLFPPH5kzBW+dto2rJjpkdQM0zxebs+EIzc3OqRiG9UpBq6RmRyQcmNl5KjvkY5rz3Jzu3HJ755pWd3xvdmx03EnFK39fMOXW56Hd3HiXXfDejvpVrBdRPayRXTpbQ4ibeeCSPk4we3rXI6D4bvvEWsNpVm0KzqrMTJJhfl689/wAKygzBSodgD1AJANICVOVJU+oOKfUaTSsjpfBsMUev3UMotzfR28q2ImIMZuB93rwe+M98Vc1658Xx+GZLbxHGBHLcoyNdFRcZGeFA5K/oK46lZmc5dmY+rHNDVwtrcSu18H6hqsnhnWNN0uOGe6QRSQQ+Qju43/PwR82M++K4qlVmU5Vip9QcGmDVzuPDllNb+Lro69bRpqclm8lpCPKU+b2AH3VfGcAjrUnix7t/DJXUtL1BZhcKYbrU5ovNTrlVCgMyn8hXBEknJJJ65zzSszOcuzMR3Y5qbbC5dbnr88eoKl7bSDUNKiaxZG4il05VEfY8EZ7d8muV8I6hq83hPVdO0qKKe6ieF4YPs8buy7juOCPmxkeuK4sySFdpkcqexY4pFZlOVYqfUHBotuCjpYv63aajaam41WJIbqQB3Rdo259l4H0rPrT0qPQJI5TrN1qMUm75PskKOCO+SxHNWbuHwgtpKbO+1l7gL+7Wa2iVCfchs4p7FXNNtC1cfDUMdNuQP7R8/Pln/V+V9/6e9chT/OmxjzpMYxjecUyjq2C0RLa2dzf3C21nbyXEz/djjXLH8K6b4g2F5ZeKWubm0lihkSEI7rgOVjXIB9q5VWZDlWKn1BwaVpJHADyO2Om5iaOqC2p6Ne28lvrmveKJAv8AZN5pzi3m3DbK0iBVQerA5yO2K82HAFO3NtC7jtHIGeBSUWFFWVgoooplBRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAdVqPgme10bTryKe08yaF5LgNex4yGONnPPHpnmsjTdAudRtHvTcWtnZo/lm4u5diF+u0cEk49BWjFe+HtR0PTrXVp762m05ZEC28CuJlZtw5JG08471b0PxVaWmiPo73l7p0cdy09vcQwpMSrcFXU49ByKXczu7GQ3hXVBrMGlqkTy3EfmwypIDFJHgneG/u4B/Kkv/Dr2WmJqEep6dewvN5OLacsytjPIIGB71rHxJp8viiyvLjUdXmtrSJkFwdqyqxBwUVeFGSODnvR4j8SWGp6GLP7RJqV35wdLmWyjtzCgByvy/ez7+lK7/r1Hd3I9V8FTWWlafdxT2heW2aW4DXseMhj9znkYA6Z5rlq6Rb7w7qWjabBqs9/bz6dE0Wy3hVxMpYsCGJG0846GqOgSeH49ZLa9DdSadtbasJ+cH+HOMU+rBN21Kml6Xd6xerZ2UYaQgsSzBVRRyWYngAetaF/4WubLSJNVTUNPvbWOVYna1n3lWOcAjA9KTQdYs9J1K8E0Esmn3sEltIqkeYsbHgg9MjA+tM1IeH7exMGlXOoXc7uGaSdBDGqjPGwE7j754oY9bmRXSaL4TfVvDl/qImgWWExiAPdIg5bDbgTxx0ziubrb0HUNNi0/UtL1R54YL9Y8TwRiRkZGyMqSMg/Wn0B3KttoN9d6q+mwiF5YgWkcTKYkUDJYvnGB61JqHh65sLEX8dzaX1p5nltNZy71R+ytkAjPbitPRde0nw5rM50976SyubU28s7oiyqSc71XkcEDg0uveILe70k2MOtanqBkkVmE0CQRAD1UZLH+VT2Fd3K7eDLxBPHLqOmRXdvD50lm9wRKF27sYxgnHbNP0fwk+q+GLzU1mgWVJI1gD3SIMEkNuBPB4GM4rdm8ZaKIpk+232oWZgMaWF5Zxsc7cD98fmAB59eMVzOhX+mR6VqOk6rJcQw3pjdZ4IxIUZCeCpIyDn1o11Em7GTdWz2lzJbyFGeM4JjcOv4EcGoqt6kumrdbdKe5e3Cgb7lQrMe5wOg9qqDGeelNFnb674W06x0ueTT9JurhoYI5Gul1GNwu5QSxiA3BckiuIrqLLUPDmgx3V5plxqF3eXFq9ukM8CxpHvGGLMCd2OwxXLAYGKOoo7C0UUUygooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigD//2Q==" alt="" />
2. 对于malloc动态内存分配,现在只是给出一个实例,让大家有一个感性的认识,要知道malloc主要用来动态开辟内存空间的,一般malloc都是和free配对的。以后会专门讲解的。下面的一个实例是动态开辟一个一维数组,比较简单。
# include <stdio.h> # include <stdlib.h> void input(int *array,int len) { int i; printf("input %d numbers ",len); for(i=; i<len; i++) { setbuf(stdin,NULL); scanf("%d",array+i); } } int main() { int n=,i=; int *a, array[n]; printf("input characters "); scanf("%d",&n); a = (int *)malloc(n*sizeof(int)); input(a,n); printf("the characters you input are "); for(i=; i<n; i++) printf("%d ",a[i]); printf("\n"); printf("a = %p,array = %p\n",a,array); free(a); a = NULL; return ; }
aaarticlea/jpeg;base64,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" alt="" />
程序要注意几点:
- 在C99标准中,准许使用下面的做法,但是不推荐
int n = 0;
scanf(“%d”,&n);
int ch[n] ;
- 在两次连着输入的时候,注意清除键盘缓存,在linux下可以用setbuf(),在Windows下可以用fflush()等,关于清除缓存,以后会专门讲解。
- 再次强调,malloc一定要和free配对使用,如果申请的空间不释放,一次两次也许不会有什么错误,申请多了就会发生内存泄漏,系统崩溃等严重问题,所以不要抱有侥幸心理。释放之后,a就是一个野指针了,一般而言,要将其赋为空,这是一个很好的习惯,希望大家坚持。
3. 大家看看下面的程序的输出结果是什么?
# include <stdio.h> int main() { int a[]={0x10111213,0x20212223,0x30313233,0x40414243,0x50515253}; printf("a[5]={0x10111213,0x20212223,0x30313233,0x40414243,0x50515253}"); printf("\na = %p\n&a = %p\n",a,&a); printf("a+1 = %p\n&a+1 = %p\n",a+,&a+); printf("&a[0] = %p\n&a[0]+1 = %p\n",&a[],&a[]+); printf("\nsizeof(a) = %d\nsizeof(&a) = %d\n",sizeof(a),sizeof(&a)); printf("sizeof(&a[0]) = %d\nsizeof(&a[5]) = %d\n",sizeof(&a[]),sizeof(&a[])); printf("sizeof(&a[10]) = %d\n sizeof(a[]) = %d\n\n",sizeof(&a[10]),sizeof(a[5])); return ; }
输入结果:
aaarticlea/jpeg;base64,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oooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAJ7/AP5CFx/10b+dV+K9E0fw3pl3Jb22oafJcz6m0siTQRSMYkBIGXDBVIK+h96w/CsOi41BL/7b9oSyuNwWOMqqgdRuOd1DerE5anOW9tcXUnlW0Es74ztiQscfQVHXS+D32eOLFdKkvPszzqG3cMy+jheMZrnZkeOeRXRkYMchhgjmlcEMorQ0SPTpdRC6oyLbbDkvI6DPblVY/pV7xBBoEVtEdIkhaQv8/l3Eshxj0dFFDC+tjBqaSzuobeK4ltZo4Jv9XK8ZCv8AQng1CMZG77uefpXf+IvtPkeKftPm/wBnYtvsG7Pl5yNmzt9zd0obsJvWxwFSTW09uIzPBJEJVDxl0K719RnqPeu1TStOfw6NTXw8n28WZP8AZxeTLKGx9qHzbtvbb+PSpIraO60fwpb3Ph6bUVuoWhNxvkBjXzW+7jgEA5y2Rii4ufqcPbWlxezCG1t5biU8hIkLsfwFAtLk3X2QW0puN23yQh37vTb1zXYaG0Wlaf4nhttPOoC3ZY1uUkkQyoJQAMoeBxnjr9Kr+DbvbqmrXB0xriX7FO6t5km6P5T8u4HOT0yeaL9R3ZzE9ndW1w1vPazRTL96J4yGH1B5qJkZDhlKn0YYrWg1LVm1xv7Ka4sLq8KwCNJXLjJGF3N83XFbVwi+IPHU0dxKby202Aq7SFnaZIVwxG07mJOTwaAucdRXaal4as7vUvD502yks01TfvjnjeNflbqAWZhkeh57U7VtB0e6stNvLOzm02KfUfskskkLxrsOPmw7N055yKLi5kcTUxs7oWgvDbTC2ZtomMZ2E+m7pmux1/RNEtrLVYobGaGax/1MkcE+chsfvWf5SCO4xz0qzcef5V4G83+xP+Edj8rr5W/C7cdt3mZ9+tLm0uPm1/ry/wAzz+iiiqKCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigDRuNU1G1uZ4Le/uoYhOXEcczKobPXAPWqEksksryySM8jklnZiSxPUk966weGftnh641GHTbq7u5r54U8uTbsHG1guPmUtkE9jiqXh7wvFrFu095ePZIZhBE5VNrt35Z1zjjgZoe7E5K7Zi2l/eae7SWV3PbOwwzQyFCR6ZFMuLme7mae5mkmlb70kjFmP1JroND8LJeeJX029vLREt7h4ZEafy3k2g8oO4yKoWsK6Tr1skh0/UQXUEK3nRHJxzjHI9KS1sJu1zKorR8RQxW/iXU4IY1jiju5FRFGAoDHAFV9Nsm1LUYLNWZDM20MsZcj/gI5NCd1cp6Fappby6mt4raW6mkgh/1cTyEqn0B4FbmteD5tG05r17maQKwXa1jLEOT/ebiucPAovcS1L39tat5wm/tS880J5Yfz23bP7uc9PakGsaqIfIGp3gi2eX5Ynbbt/u4z09q6n7DY+SdD+w22Bov277Xs/feds8zO7+7/Dt6Vn6V4Z07UtIGqf2pNHBbKx1H/RwTbHHybRu+cMeB096G0SmrXMW01fU7CIw2Wo3VtGTkpDMyAn1wDSW2q6lZvI9rqF1btKcyNFMylz6nB5roEs9Dn8H2VxfXbWe2+nijlitA8sqYUjfyOBn1PXipdE0Kw03xJqVrrEyyvYWzzRAW/mxyDZuDkEjOAQdp60XC6OWa9unu/tjXMxud27zjId+fXd1zTYbia3nWeCaSKZTlZI3KsD9RzXSaLFpOt+OYVu3Q2jsNiw2YiWYgdCgb5Rxzg8/jVLUdVsDrKXMdpaX1vHGV8r7J9lRjz1VG5x655oHfoZ0up6hcbfOv7qXbJ5i75mOH/vDJ4PvRcarqV2jpc6hdTpIQXWSZmDY6ZBPOK2tYsYbu/wBHsLTTIrS8uYVeeO1Vm5c5UYZjyEweo603XvCsWl2dvdWN/wDbUmuDbFMJuDgZH3GYc/nQF0Y02p6hc26209/cywJ92KSZmVfoCcUw3l0bQWZupjbK24QGQ7AfXb0zXQ614Pj0zR5r6HUDLLauiXFvIEDIW9ldiMEY5xViUaLpvgu0kgkjkur5Zt7z6eHZmBA2hi3yAZ4IHPWi4XWljkKK7XSLKxMWiaRJYW0o1i1llnuXTMqNlwm1v4QuwHHfJzXEjpR1sNO4tFFFMYUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQB00XjLVNJke1gjtZFi82JHliJcRucsmQR8pPPrWfp3iS7060jtktbK4WCUzW5uYPMMDnGSvPsODnpUt1oobTbrWJb6KFTdSQxRFGJdlAJBI4U4PGeuDVXStBv8AWg5shAShC4knSMknoACeaHuxSUdRJ9bu5dcfWYxFbXTuZD5KYUMRyQDnrk/nVfT7z+z7xLoW0FwYzkJOpZc9jgEVe0bRVv8AU7m0vpJbYWkE00oRAzgxjJXBIGabomm22o3dy9zJKtlZ273Mpjx5jKuAFGeASSBntSWgm0Qavqj6xqEl9LbW8EspLSC3UqrMTksQSeapAkHIJB9q1Nb021sJ7Sa0eZrK+t1uIvNx5igkhlOOCQQee9JrulwaXc2y208k0Nzax3KmVArAMDwQCRxihaDuZpdyMF2I9yaSnRo0sixoMs5CqPUmtO58L63aW8lxcae0cUY3OxkQ4H4GgLi/8JNqH9k/2dtt8eT9n+0eV++8nOfL3f3c+2e2ansvF19p8VlFbWlkkdnv+Ty22zl12sZRu+fisKum0rw5p93aafDdT3K6hq4ka08vb5ce0kLvB5O5gRxjHvQxOyKsHiqeDTk07+y9LltkmadUlty2Hbv97sABj0HOaZaeKb22v72+mt7S9uL5Skr3MZb5SMFQARgY4/Co7Hw1qmo2cV1axwyRy3AtgPOXcshzgMOqg46nir9p4Te70nUCjR/btPuo4pHN1GLcIwOTuPGQRjOe9LQXumfp+vSaZrB1S20+x8z+CJo2McZ9VG7P5k9aqXl4t3dCdbO2thx+6gUhDj2JPX61q6V4Tvb3xNFot4Batw0jGRPuEZyhJw2R0xRd6FDN4httK05GgM2ATcXkUoGT13LhenbrTXQd1qUzr9+fEB1wOi3fmb+E+QcY27f7uOMelWLjxTdzWKWcVlp9pFFcC4i+zQbDHIO4Oec++as+IdE0vR9Vgsg1zFEJWSaczxTkqDjcET7p6/KxqrqumaXb6Pbahp93eSfaJnjVLmFUJCgZYYY8ZIFJNWDS5JdeLbu7s7y0bT9NjjviGnMVvtZnByHznrkn256VDceInudIh0x9L04RwKVikWJhIhOCSDu6nHpTL7w5qen2Avpo4Wt8qGeGdJNhbpu2k4zQfDmpjSjqaxwyW6oJG8udGdEzjJUHIFPQNB9n4m1Cy00WMS25CK6QzvFmWBX++EbsDz+Zxisiun8NeDbnVbu0N9AyWl0pKbLiNJivPzhGyWXj0rN0/wANapqcCz20cKxSSGKJp50i81h2TcRuP0o6gmjKoqa8tJ7C9ms7lNk8EhjkXOdrA4IqGgoKKKKYBRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAd1p3jLTNLszp93YTSCKSXciLG0byFsrMd3O9enoRWZoXie00zTYrab+0IpILo3BaxkWP7SDjCyE8jGO2eprLudJ1C4F7qENpI9rFKweUYwCOvucZGcdKzkikkz5cbvtGTtUnH5UPdkyirs6zSLq31PxfrNxZ70S+s7oxJcMqtudc7c5x16ViaLqEelXdxFewySW1zA9rcpGQHCnupPGQQD6cVX0zSrjWLlra18rcsbSs0rhFVFGSST7U7TdKm1S+a0hkhQRqzyTO2I40XqxPp/Ola2nkHcm1rUYdTuLWGyhkjtbSBba3WUguwySS2OMliTxVzxghivNNgYr5kOmQJIqsG2sAcgkd6zdT0qbS7xLeWWGVZUWSKaNsxyI3RgT2+vTFN1LSrjSLhILnyiZIlmRoZA6sjdCCKP6/MF+hWjcxyLIuNykEZGRkex61p3PiXUru3kt5fsmyQYbZZQqcexC5H4Vn3FrPa+V58TR+dGJY8/wASHof0q3qGjTadYWd61zbTxXm7Z5DltpXGQ3HXkUMehn10ml+JbKzs7CS5tbiS/wBKEgs2RwI2D5I355+ViTx1rm6Tco7j86AaudL4d8Q6foFoxWG5ku7pxHeEhfLa353IvIIY/wB7t2xRBqfhmLS9S0xoNU+zXd0ksLKY90SoDgHnDH5iPyNc3WhpOjS6qJ5PtNvaW9sAZbi5YqiljhRwCSSfaiwmlubFt4k0weJbG/ntrtLPTbdYLaOMq0jBQRlycDncTx7Csq3l0a11yCeM3zWMTrIdyIJSwOcYzjGarXum3dhfXFlPC3nWzbZNg3Ae+R2I5zUum6PcalNLErLA8du86iZWHmBBkheOuKE7ahZWsP1650291Oa800XSi4keWRblVG0sc4G0nI570++1eCe60zyLYm106GNFhlx+8IO5ycf3mJ/DFZbI6Ha6OrEZ2spB/KtPVNBk0eBDdXtqbk7S9ohYyRhhkZ429MdD3oWlhuzNzVvFmm6jpWp2e7V3a9dZYxPIhjgKkkIqjovOMjngcVLJ4y0ue2u4pE1VEu7L7N9mjkTyLc4HKL35HfBGT1rnrnQZbPSY766vLaF5oxLFasW810JwDwMDoTgnOKkbwvfixkvBcWDrFCJ5I0vEaRU45Kg5zyOKVlaxOmhq6f4n0ZNU0vV9Qs75r2whSApA6CNwi7VbnkHHUdCR1qkuraJd6faWeqW9+f7OZxbPbOimSNmLYcH7pyeoz19qwRHIYzII3KDqwU4H40LFI6syRuwX7xVSQPrTsPlQ65lWe6llRWRXcsqs5cgE9Cx6n3qOlRHkbbGjO2M4VST+lXNK0qbVriSOOWKCOGMyzTzkhIkHUnAJ6kDAGcmgdylRVvVNNn0m+a0uGjc7VdJI23JIjDKsp9CKqUDCiiimAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAehWH/CNXehLp+qXsKbLmad985jkSbOAgGP9W6gZPY1T8IanbaZpiPDqNnazNebrxbu4lUCIY2lFQ/P/Fnr2rkL/wD5CFx/10b+dQUdWyZQ3R2FisC+L/EJtZYZbd7K8eJ4GyhUqSMfnWP4ZubeOW+tLmdLddQsnt1mk+4jkhl3HsCVxn3rPsdQvNMuftNjcPbzbSu9OuD1H0NQMzO7OxyzHJPqam3TyC17mx4luLdv7Osba4juRp9ksDzRHKO+5mbae4G7GfarXiKf7Ne6JOIopdmlW52TJuRuD1HeudVirBlOCDkGp77ULzU7gXF9cPcShQgZ+yjoPpT/AM7/AJ/5hY2fEfiKLVbWyghs7FdlpGkjxW2x0cZyqn+7TtUtoU8HaXEmpWE01tJM8kMVwGcByuOO/Q59K5yiiwWtYK6vTvGyWGnQWhtLpzCgXctyig/QGM4/M1ylFA2k9x88nnXEkuCN7lsE5PJzW1ojW15oepaNNe29lLcSQzxS3DFYzs3AqTjjhsj6VhUUA1c7e21mCXxfqWoxapFDpqW4ilikfYb+NYwmwKe7Y69s5q3BqUB8Ywal/wAJDaR2f9nSC1WSXd9hzHtWIrzkgkdOuM157RSsTynWapfzPpmn2k+uwX2rpeGSO9ScsLeMrjBlI/vc47UeOb66vdSEo163v7RmTyo4rrzPLYIAWI7c55rk6KdhpWOw8XX19daZZKfEdtfQx2scdxBHeby0oJydvftzWLDPb2fhS4SOVGvNQuAjoD80cKfNz/vMR/3zWTRRYErJI9F8O6pp1rpljZ/2rYR2MlrItzHd3EnmCZgwI2D5QucckY79ar+ENTs9HsLNE1SxhxdsdQFzcSfdBAXy0ThwV7nPvxXBUUdbi5NLHeaTqGnWVpqVja3dnDdnUGlE3217dZYcfKFkQdj/AA8dfaqk+p2Wo6xrds91Y2/9pWaRLcxlhCZUKt8zEZ52kFsYzzXHUUrD5db/ANdzY8TXVvPfWtvazrcR2NnFamZPuyMo+Yj2ySAfaseiimMKKKKYwooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAnv/wDkIXH/AF0b+dQVPf8A/IQuP+ujfzqChjluwooooEFFFFABRSZGcZpaACiiigAooooAKKKKACijrSZzQAtFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAdnp/g+11YG6e5u5Gmkl3rZpG5gwSAGUsGJOM/KKyPDcUbnUlE8sN0tlMUHko6MoU7g27lT6EdKlfxVqFjOkMUFizWUj/ZppLVWliJYnIb1yeM9Kp6X4iutJWbybWxmeYMJJLiDzHIYYYZz0NJ3uyXe7v3HeHdKsdXna3uJboTsVEEVsisX67mYsQFVQMkmtC18LWOo6vqUdhqMk+m6cqs1xsVXlJOAFDEL1zyT0FZ9j4ku9OlvXt7SwC3yhJomtwU2/wB1RngHuO9A8T6gNQlvFS1AmhWCS3+zr5DxqBhSnTjA96NRWlqaU3g+BdQRU1MC0FpJdzlgjzQInBBVGIJORjnnPtVC70jTRpkOrWN5cvYm5+zziaFRLE2NwIAOGBGe46VF/wAJLqKX8V5ALa2aFGjWKC3RIyrfeUrj5ge+c0281+7vRbxyQ2kdtbv5iWsMASEsepZR1J6c9qWo9Tb8ZzaZaJHpOm/KkaQvsayjQ4MYO7zQSxJzkg8flWVq9hb6boWj4jBur2JrqWU9kLFUQe2FJ/GotY1+51wq11aWMci4HmW9uI2IAwATnoBijUNUi1HRNMtpFYXVgrw7v4XiJ3L+IJI+mKYJWsa3/CHW/wDYks73zQ6lDafa3tJDH93rjaGLDg5yR+FZ2k2FvqOg6xmMC6sY0uopB1KbgrofbkH8Kmj8aarGjAxWEjSQfZ5pHtFLzR4wA7dTwB+Qqpp+qRafomp20asbrUAkJbHypEDub8SQB9M0nfUSvbUy63vD/hg67ayzi4ni8t9mI7XzQeM9dwxWDSEA9RVFO5o63pR0bUjZmSSTCBt0kXlnn2yf51DptybTUIpls4rxwcJDKhdWY8D5e+D2qrjHSruj6vc6HqcWo2axGeLOzzYw4GRjOPWkgex0d9Y2t94o0DTL2O3jv5GSPVBbKEQMX4UheAwXAOO/vVbW5YtU8PPqLWdtaz22pNaoLeIRgxFSQpA6lcdTzzzWRf63c39xBP5FraSW53IbSERfNnO446nPenatr99rSxpdeQiIzSbIIRGrO33nYDqxx1pW0Ek7mbRRRVFBRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAb48L3+oXPnJLZwC6kkNutzcrG0oUkEqD7giquiaat6l9K8UM4t7aRvKa58pwQM71GPmC4yRW/Z+MLPSEW2NvfOYJJDLCJUaC4JYnBVlJUYwDt61j6Fqmj6c11Ne2168txFLCFtnRUVHGP4hnIpO92Jt3d+5S0vRbnVo5pIZrWFISod7iYRgljgAepOKsyeFtTi1e50xxbiWzUPcSeevlRDjln6DqBjrniptD1bRtH1C6uTa3rnbtspQyb7c93IIwW9D269asWHiiz0vUL77Fb3sdlfQokjCcfaA6nPmBsEZJzkYxzQTeWpnt4Y1X7dBaRxRzG4jMsU0UqtEyD7zb+gAwc56VHeaBe2Qt5GktZYLl/LjuYbhXi3DqC3RSPftWtJ4viOoKxivbqza1ktZku7kNI6PjJUgAIeB0B6c1Ru9V0xtMh0extbqKw+0/aLh5pFaaRsbcDACgAZ/E0tQuy74o0DT9AtIoIsTXWIy8630bgll3H90BkDng5/nWTeaV9h0bT72WU+df73SIDhYlO0MT6ls/gKs+JNS0nVrkXdjb3sMxVEYTujLtVAoxgZzwKdrd1BqGgaJNHKvm2kDWc0WfmUqxZWx6EN19QaBq+hBe6LHY6JY6hJegy3qGSOERHBUMVOH6bgRyO2RTtO8Malq1g13Z+RIBu/decBIdoycL9PWtuTxxaSeHH0w2E6yNaLBGwZDHbsF2lowRkbx97mm6P40s9Ph03z7bUC1jEYTDb3QjgkBzlyuOW578HApu+ok5WMDSNK/tdb2OOUrc29s1xFHjiULy49jtyR9Kzutb/hi7tNMv8AUNTaTbFBaTLBHIRvkeQFFXA69cn6Vz4GABR1KXUu6fpV5qrOtnGjmMAtvmSPr/vEZpNQ0u80uRI7xERnGVCSpJx/wEnFGn6re6WztZSrGZAA2YkfOP8AeBo1DVLzVJEkvZVkZBhSI1TA/wCAgUBrcrRxvLIscaF3chVUdST0FbfiPRLPR7TTTbTPLNKsi3LEgr5iNghfYdPwrJsb2fTr6G9tWCzwOHjYqCAR7GtrxB4mh1rRtOs1tfJmtS7SusUaI5bngKARz+f1oYtbnPUUUUygooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAL1xZXdzeXUkFpPMiytuaOJmA59QKbYWAvBcPJI8MUMTP5ghZ1LAcKSOmfU8V3Wk61p9nDaLc6tbxCB5vMEc80E8AZznCqCkpI5GfXBrn/CxgiOoPJrdtZwXFvNAIZ5WVnLLhSVAIxz1pN6sTer9Tnre1ubokW1tNOVGSIoy+PypDbXC3AtzbyiY8eUYzv/AC610vhZrfTru+iuNdt4oYwrCNJnSO9cZ2jeBkIMknuelaFnrltFr+sS32rW13eX9tGI7/MiRI/BaMMnzKuPlBHp70XJ5mcS8Msc3kyRSJKDjy2Uhs+mOtLLbzwSiKaCWOQ9EdCrH8DXbt4isl1m28+/tBJHYzW8V7bCWX7NI33WLv8AM2ORkdM1m6nfD+xrLTX12PUNRS9MyXqyOVtUIxjzGGeT83HTFK47szdV8OyaNaRvdXkQunCM1oI5NyBhkZYjbnGMgHvVCTT7iLTodQkQLBPI0cRJ5crjcQPQZAz610Pja9e9ullj8QxajbFY1EEc7ttZUAZtrADqDz71X8RnzfD/AIamh5gWyeHjosqyEuD78g/jTuCexly6PqEOmR6lJblbWX7jlhkjJAO3OcEggHGOKrra3LwNOltM0K/ekWMlR9T0rtby48LXnhSCN7mB7uxsQtmrSOJWkPMiycYwGJKYOOcVY8M6zpVjZabCdVsre18p1vIrnzWl81twOFHyhORz9c0N7iUnY4qw0mfULW8uo5IIobJFeV5n2/eOABwckmpNJ0c6olxNJeQWNrbBfNuJ9xVSxwq4UEkn+hq/pcfl+F/E0YdZAgtxuQ5Vv3p5HtUeiy2d1ouo6NdX0Vi1zJFNFPMDsym4FSQCRw2Rx2oBt6lC50qez1h9LuZIYZo5NjO7/u/Y5HYjBz702+0y407V5dLuTGs8UoiYh8oD659OetW/EeoQap4kmubUloMxxxsRguqKqhse+M1N42Ut401VQCSZ8ADucChdCjJvbO40+9ms7qMxzwOUdT2IqGuh8dOp8TsmQ0sNtBFOR/z0WNQ34g8fhWHazfZruGcAnynD4DbScHPXtQgvpciorqdU8byalps9mba5QTLt3Nfs4H/ASvNctQCNPTtButS0y/1CN444bGPe28nMh7qvuBzWZXa6Bq+hyeH7iyvFNrJBYSxLuutq3EjkEkLsJydoGSewFcVR1FFt3uFFFFMoKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAnv8A/kIXH/XRv50Wdjc37yJaxeY0UTTOMgYRRknmvQtF0W1mhtHk0iNmupJt01zZNPFL8xAJkVgYgMdx2zzXOeFtLuL0anB/ZAvYfs022cQFykiqdoRx057d6TerE5XfzOZorqfCOlXMtzfQXGjRyi3VXuZLm2Mr26gnKrH3duAB/StK00qyuvEWryXWiCzmito5rLS1i8w4bHzGPcNzBeSue/Tii5PMcJRXePo2ly63bA6RJFctYzSrZzR/Z0u5l+4Am4lcjORkZxx1rN1axK6NZX11oUNhqj3hjjs0iZBcx4zkx5yMNxkYzn2pXHzGFNo2p22nR6jPYTxWkhASZ1wrZ6Y+tVt8/wBl8vdJ9nD5A52B8flnFdZ8QTef2iv2jRI7OPyodtwIXQsfKX5Mk4wPTHaqHiIC28PeHLaEYhe0e5Yj+OVnIYn3AUD8KdwTvY56ivRNS0Ge48CWuy8eOHT7FZ50SDdHOWyyGM92BO1z2x7UeGPD1nc6bYW1xpDX39oQSStdxW42xfeAUyFs7gQOAB1HBobtcSmrXOI06bVYluF0xroK8eLgW4Ygp/tY7fWoLWyu70stpaT3BUZYQxM+PrgVt6P51v4W8SoS8Uirbqw5Uj96QQaf4VutVgtb6HTtFn1OOd4vM8l5EKEE45jIPOT7UA3a5h2631tqCLbJPHeRvhVRT5it9OuaWeW+fUmluGnN8ZMs0mfM3++ec1f8RW8OneKrmGznkZUlUhjLvZGIBZS3cgkjPtUvjaR08bapIrEOtxuDA8ggDmhPYoxJGd5HaQsZCxLFupPfPvTa6DxzFGniZ5EUI9zbwzyqO0jxgt+Z5/GsS1MQu4TPjyt435BI2556c/lQgvpciorqdTl8Jtps4sEthclf3ZWG5Bz9Wcj8xXLUXBO5NBZXV1FPLb28ksdsnmTMq5Ea5xk+gqGu+8NWdtceEr+3sb9NzafNLfIIZCwkyNoJC4wFHHPVia4Gi+thRdwoooplBRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFAFq9mmW8uUWaRUMjAqHIBGfSoY7i4iXbFPLGvXCOQP0rsNO8KafqpE0s91NLPJLvjtZIQ0JBIUbHIZ84z8tZHhpIy2px+dcW90tlMVKKhUqFO5WDDIz6jkUm9xNpv5mMtzcK7OtxKrt95hIQT9TTTLKZfNMrmTrvLHd+fWtbw3plhq0729ybtpjt8mO32qMc72dm4VVHOa0LXwzpeoarqZsr+Z9K05FbzXKRvMWO0BSxCgE55PbtzQLmRzDO7vvd2ZzzuYkn86c00rSCVpXaQdHLEkfjXTyeE7A36eTqmbNbSS7uQrJLNAqdV+Q7STkYOR156VQu9L0s6TDrFhcXhsvtX2a4jmVPNQ7dwKkcNkZ9MGi6C6MeS5mmGyW4kkA5w8hbH51PNqU8+mW+ny7WitXdoWI+ZQ3Vc+mRnHrmul8a3lhCkWj6d5scUUcLiJraJVAMYOd4+csc5OeKytYsrfTtB0ZVjU3N5C13NKeu0sVRR7ALn6mgE72MgTShAglkCjOFDnAz14oWaVFCrLIqg7gA5AB9frXVah4YaPwnY3VrpitMbfz7ycz4eA5JG9c4CsmCvQ0mi+ErHUbC3F5evaX15G8ltG0iYdQDtOz7xBwfT2zRfcOZWMOw1iSytL+1a3iuYr9VWXzS2QVOQwII5z61RSWSHJjleMkYJViufyrb0NIV8O69dvbQTTQxwiJpYw/l7nwxGehx3p3gebZ4otbdooJY7glHEsSvxtJ4yOPqKAvuYlvKkFwkskKTKjZMbkhW+uCDVnUdUk1TWZtUuIot80okaNQdnbjrnHHrV/wALhIv7V1ARxyT2Fi0tuJEDqHLqu7B4OAxPNL4o2C603UFiijmvbGK5mREATzMkE7egztBx05ova39f1sG7a/r+tTK1C/uNU1Ce+un3zTvuYgYH0A7ADgVXrc8XQwRanatBbw24msLeV0hQKu9kySAOmTTfEdjbwJpd/axLDHqNkszRL0SQEq+PYkZ/GjYaZi0UDrXXy+CLeOzecXt2SsZfBt4sdM4/1v8AShuwNpHJpNLECI5XQN1CsRn64qPIFKOldx4D0KWaM6j/AGeb37T5tvH8gdYgIyWY+hJ2qPxoeiuJuxw9FKyNGxjcFXQ7WB7EUlBQUUUUwCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooA35PFWq2Uwt4WtsWbuLaR7VGkhyxOVYjIOTVTTPEV9pCSi2jtGabcHee2SR2DDDDJGcH0q7/wi15fzic3djaLdvIbcXUxQyhSQccEDkEckVU0PTkvFv5GS2nNvbSMIZZmjfgZ3rgHdt64JGaT6idriWfiS/sJbx7eOzUXyhZ4zaoUKjnAXGAPYUv/AAk2qDUZL4SQh5YlhkiECeU8YAAUx42kcCodK0aXVkldLu0t1iKKTcSFdzMcAKACSeKtP4U1GPWLvTDJalrFQ1zOJv3UQ46tjrk4xjOaNBe6Qt4l1X7fDexzRwSQKUjWCFI0VT1XaBgg989abea/f35txP8AZxDbPvjt44ESIMepKAYJPfNTt4U1QXsFtGsMq3ETTR3CSjyTGv3mLHGAO+eahvNAubOO3n+02c9rcSeUt1DNuiV+4Y4BXjnkdKNA0DV/EF7re03sdpuXHzw2yRsQBgAkDkY7UX+qR6houm2kkbC5sA8Qf+F4idyj6gk/ga1fFOiaXoVrFa25hnugIy86329m3LuP7oDheeDn09ayb7SlsNF068lkY3F+HkWMDhYgdoJ9yQfwFLQFbQnPi3WW019PeaF4JIRBJugQvIi/dDNjJ29vSlsPF+s6bFbx200ANspSKR7ZHdUOcpuIzt5PHvQnhTUpdEbV4WglgSIysisd6oDgnpjj0zmo4dNs/wDhFJ9WmM5nF2LaJUYBBlN2WyMn8MU31F7o/TdUtE0zWbS88yNtQWMxtBECqsrlsYyMA9OOlVdH1m70O6+1WS2/nY4aaFZNv0z0rX8O+HbDVdJa4m+0TXRuTClvBdQxMRtBBxJyxJOMCsvRrG2u/ENvp1+lxHHNOIGEZCuhLY5yD07ii2tgurMZBrV5a6o2o2/kwzOCrIkKiJlIwVKYwQfSor6/uNVvjdX0u532qSqABFHACqMAADoKlgsrY+IF0+5meO3NyYGlUAlRu2hsflUGoWM2majc2FwAJraVonx0yDihW0K6l3xHqNrqd/DJZeb5MFpFbhpVCsxRcE4BOPzput6qmpSWkVvG0drY2yW8Kv8AeIHLMfcsSfyqlaWsl7cpbwmMO5wDJIEX8WOAKuX2g3unW32i4e0KZAxFdxyNk+ysTQGhm0m1f7o/KlroP7CtIfCFxf3DP/aIMUqIGwscTsVG4erYJ+mPWhg3Y5+r2k6xeaJefa7IxCXaVBljEgAPBwDxnHFUaKYNXFY7mLYAyc4AwKSiigYUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQB2Vn4yg0bbBHaXm+CRzIiXYEFySxPzxlTxggHBGcVkaHq+l6a1zNeWF1NNcRyRfuJ1jRUcYOAVPIrLv/8AkIXH/XRv51BQ1qwaV2buiazpWjX91crp905dNlpIJ1EltnqwJXBbHQ44qax8U22mX94bGyuYLG8hSOREuiJwy87xJj7xOSeMc1zlFKxPKjpX8XL/AGgsotbm4tWtntp47y8aV5Ufr82AFPAxgduc1Tu9Y099Oh0qysJ4NPFx9on8ycPNK2Nv3toAAGccd6xqKLILI2fEWq6ZrFwLqzsbq2n2ojebOsilVUKMAKOeBTtavLfUdA0WRJVFxaQNZzRZ5ADFlYexDY+orEpO9A7HYDxrZSLK1xpt40lxZfZJFS9xEi7QuY024HQHBz3rOgMcvgK5gWeETRaisxieUK5TyyMgHk8+lYNIeoosJRtsauk32j2XlzXul3F1dQyCSNkufLQ45AYbScZ9CKsaJcyah42ttRupoIi96LmZ5JBGijfubkn9Kw6RulPZ3BrRmpEtvd+Kv3lxHFbvelmmY/KqbySfypmv6kuseIL/AFFFKpczs6KeoXPH6YrO7UtJK1h9bktrdT2NylzaymKaM5VxjI/Orl94g1fUrf7Pe38k8WQ2xguMj6Cs6igLB1rpx41uJvDd7pV7G089yqRpOqxqEROgPy5bjjOfpXMUUPUGkwooopjCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigD//Z" alt="" />
为什么会这样呢?大家都知道a是一个数组名,准确的讲,a是该数组首元素的地址,而&a是什么呢?&a是整个数组的地址。就像一栋房子一楼的门卫室,如果门卫室坐落在***地方,则这个***既是门卫室的地址,也是整栋大楼的地址,它们的值相等,但是表示的意思不一样,这就解释了为什么a和&a都等于0xbff7aadc,而sizeof(a)等于20,sizeof(&a)却等于4,因为&a是一个指针变量,32位机下的都是占4个字节,由此,我们可以推出对于一位数组buf[],我们想求出里面元素的个数可以使用sizeof(buf) / sizeof(buf[0])。
对于a+1和&a+1,a+1则是第二个元素即a[1]的地址,这里的1表示一个数组单元,0xbff7aadc+4=0xbff7aae0;&a+1则是a[4]的下一个地址,此时的1表示的整个数组单元, 0xbff7aadc+4*5=0xbff7aaf0。
大家会有疑问,我们数组是a[5],应该最大为a[4],怎么会有a[5],a[10]啊?为什么没有产生溢出?因为在整个数组中我们只是申请了5个单元,虽然这5个单元后面的空间我们无法访问,但是,这些空间还是实实在在存在的啊!所以还是有地址的!
4. 下面的程序是实现简单的求m到n之间的素数,大家看看吧!
# include <stdio.h> int prime(int n) { int i,j; for(i=; i<=n; i++) if(n%i==) break; if(i==n) return ; else return ; } int main() { int i,j,m,n; printf("Please input the Prime min and max limitation you want to calculate: "); scanf("%d,%d",&m,&n); printf("The Prime of %d to %d limitation are ",m,n); for(i=m; i<=n; i++) if(prime(i)) printf("%d ",i); printf("\n"); return ; }
打印:
aaarticlea/jpeg;base64,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" alt="" />
5. 大家说说,浮点数能进行自增和自减运算吗?答案是肯定的,不信?我们做个实例测试一下。
# include <head.h> int main(int argc, const char *argv[]) { float i = 1.0; double j = 2.0; printf("i=1.0,++i = %f,j-- = %f\n",++i,j--); return ; }
打印:
aaarticlea/jpeg;base64,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" alt="" />
C语言深度学习——第一天的更多相关文章
- 【吴恩达课后测验】Course 1 - 神经网络和深度学习 - 第一周测验【中英】
[吴恩达课后测验]Course 1 - 神经网络和深度学习 - 第一周测验[中英] 第一周测验 - 深度学习简介 和“AI是新电力”相类似的说法是什么? [ ]AI为我们的家庭和办公室的个人设备供电 ...
- SIGAI深度学习第一集 机器学习与数学基础知识
SIGAI深度学习课程: 本课程全面.系统.深入的讲解深度学习技术.包括深度学习算法的起源与发展历史,自动编码器,受限玻尔兹曼机,卷积神经网络,循环神经网络,生成对抗网络,深度强化学习,以及各种算法的 ...
- C语言进阶学习第一章
1.在C语言里面使用scanf给某个变量赋值时候,如果成功返回1,失败返回0:测试代码如下: /***假如在键盘输入的不是整形数据,则输出0,否则输出1***/ void main() { int a ...
- cousera 吴恩达 深度学习 第一课 第二周 作业 过拟合的表现
上图是课上的编程作业运行10000次迭代后,输出每一百次迭代 训练准确度和测试准确度的走势图,可以看到在600代左右测试准确度为最大的,74%左右, 然后掉到70%左右,再掉到68%左右,然后升到70 ...
- 【深度学习Deep Learning】资料大全
最近在学深度学习相关的东西,在网上搜集到了一些不错的资料,现在汇总一下: Free Online Books by Yoshua Bengio, Ian Goodfellow and Aaron C ...
- 碎片︱R语言与深度学习
笔者:受alphago影响,想看看深度学习,但是其在R语言中的应用包可谓少之又少,更多的是在matlab和python中或者是调用.整理一下目前我看到的R语言的材料: ---------------- ...
- 30个深度学习库:按Python、C++、Java、JavaScript、R等10种语言分类
30个深度学习库:按Python.C++.Java.JavaScript.R等10种语言分类 包括 Python.C++.Java.JavaScript.R.Haskell等在内的一系列编程语言的深度 ...
- 重磅︱文本挖掘深度学习之word2vec的R语言实现
每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 笔者寄语:2013年末,Google发布的 w ...
- 深度学习与人类语言处理-语音识别(part2)
上节回顾深度学习与人类语言处理-语音识别(part1),这节课我们将学习如何将seq2seq模型用在语音识别 LAS 那我们来看看LAS的Encoder,Attend,Decoder分别是什么 Lis ...
随机推荐
- Java集合框架
集合框架体系如图所示 Java 集合框架提供了一套性能优良,使用方便的接口和类,java集合框架位于java.util包中, 所以当使用集合框架的时候需要进行导包. Map接口的常用方法 Map接口提 ...
- 本周psp(观众页面)
个人项目PSP(观众页面) 计划 30min 估计要用多长时间 3d 开发 5h 需求分析 1h 生成设计文档 1h 设计复审 50min 代码规范 20min 具体设计 40min 具体编码 3h ...
- 【转载】js 各种复制到剪贴板
一.实现点击按钮,复制文本框中的的内容 <script type="text/javascript"> function ...
- Deep Learning 18:DBM的学习及练习_读论文“Deep Boltzmann Machines”的笔记
前言 论文“Deep Boltzmann Machines”是Geoffrey Hinton和他的大牛学生Ruslan Salakhutdinov在论文“Reducing the Dimensiona ...
- hibernate 和 myBatis 比较
Hibernate与 MyBatis的比较 第一章 Hibernate与MyBatis Hibernate 是当前最流行的O/R mapping框架,它出身于sf.net,现在已经成为Jbos ...
- Failed: error processing document #281: unexpected EOF,往MongoDB当中插入json文件时出现的错误。
往MongoDB当中插入json文件时提示的错误(我的操作系统是win10): 当时的执行命令是:mongoimport -d test -c restaurants d://primer-datas ...
- Table的行列合并
<table border="1" width="200" height="200"> <tr> <td ro ...
- 自动生成build.xml文件
使用Eclipse 自动生成 Ant的Build.xml 配置文件,选择要生成Build.xml文件的项目,鼠标右键, Export-> General -> Ant Buildfiles ...
- logistic原理与实践
逻辑回归模型是一种将影响概率的不同因素结合在一起的指数模型,得到的是0~1之间的概率分布.自变量范围是,值域范围限制在0~1之间.在搜索广告.信息处理和生物统计中有广泛的应用.例如搜索广告的点击率预估 ...
- Mongodb 副本集分片(二)---mongodb副本集部署脚本详解
分享下,最近做的一主一从一仲裁的示例,如有需要,大家可以扩展成一主两从一仲裁. 大家可以看到 我的集群名字沿用了默认的neunnm,如果是其他的话 大家注意修改. 需要辅助文件hosts.con ...