语法
蓝白天际线
本人从事linux的嵌入式开发.
展开
-
函数 —— sprintf() 拼接字符串
描述C 库函数int sprintf(char *str, const char *format, ...)发送格式化输出到str所指向的字符串。参数str-- 这是指向一个字符数组的指针,该数组存储了 C 字符串。 format-- 这是字符串,包含了要被写入到字符串 str 的文本。它可以包含嵌入的 format 标签,format 标签可被随后的附加参数中指定的值替换,并按需求进行格式化。format 标签属性是%[flags][width][.precision][len...转载 2020-12-28 15:55:57 · 5349 阅读 · 0 评论 -
S_ISLNK S_ISREG S_ISDIR S_ISCHR S_ISBLK S_ISFIFO S_ISSOCK等宏的介
stat函数讲解:表头文件:#include <sys/types.h>#include <sys/stat.h>#include <unistd.h>123定义函数: int stat(const char *file_name, struct stat *buf);函数说明: 通过文件名filename获取文件信息,并保存在buf所指的...转载 2019-01-15 09:58:37 · 1464 阅读 · 0 评论 -
Linux中的popen函数和system函数
说在前面:在实际编程中尽量减少使用system函数。int system(const char *command);说明: system()通过调用/ bin / sh -c命令执行命令中指定的命令,并在命令完成后返回。在执行该命令期间,SIGCHLD将被阻塞,并且SIGINT和SIGQUIT将被忽略。返回值:实际上system调用了三个函数:fork()、exec()、waitp...转载 2019-01-08 11:14:17 · 689 阅读 · 0 评论 -
C/C++重点知识点
在16/32/64位机器上 char占用1个字节、short、short int占用2个字节、float占用4个字节、double、long long占用8个字节int、unsigned int在16位机器上占用2个字节,在32/64位机器上占用4个字节指针在16位平台占用2个字节,在在32位机器上占用4个字节,在64位机器上占用8个字节long、u转载 2017-10-17 15:03:32 · 232 阅读 · 0 评论 -
C语言sscanf函数的总结
在处理字符串的程序当中,经常会分析字符串,从一大长串的字符串截取我们需要的数据,这如果通过自己手写函数来分析,虽然可以,但当你知道sscanf的功能,那就自己写函数分析就显得多此一举。这些函数的使用都很简单,总结一下,等下次使用一目了然。俗话说:好记性不如烂笔头,记录下来就是效率。以下源代码是本人测试的源文件,附带讲解注释。[cpp] view plain co转载 2017-08-31 18:07:08 · 445 阅读 · 0 评论 -
c/c++ 数字转成字符串, 字符串转成数字
数字转字符串:用C++的streanstream:#include #Include string num2str(double i){ stringstream ss; ssi; return ss.str();}字符串转数字:int str2num(string s) {转载 2017-08-31 17:39:43 · 838 阅读 · 0 评论 -
main函数中两个参数的用法总结
1、定义 C语言规定main函数的参数只能有两个,习惯上这两个参数写为argc和argv。因此,main函数的函数头可写为: main (argc,argv)C语言还规定argc(第一个形参)必须是整型变量,argv( 第二个形参)必须是指向字符串的指针数组。加上形参说明后,main函数的函数头应写为:int main (int argc,char *argv[]){…}或者 in转载 2017-08-30 10:57:37 · 14179 阅读 · 0 评论 -
C语言中的printf用%d输出float类型数据出现或以%f输出int型数据的结果为什么是0
*******************************float类型%d输出************************************** floata=7.5f; 如果用printf("%d",a);输出的是0。 但float型用%d输出是否一定是0呢,答案肯定不都是0; 为什么 7.5用%d输出的是0?分析如下:转载 2017-08-29 15:10:25 · 3879 阅读 · 0 评论 -
C语言中printf用%d输出float类型数据,或以%f输出int型数据的结果
1.测试程序及结果程序#include"stdio.h"int main(){ float a = 7.5, b = 1.23, c = 1.24, d = 1.25; double a1 = 7.5, b1 = 1.23, c1 = 1.24, d1 = 1.25; int e = 0, f = 1,g= 0x7fffffff; unsigned int h = 0xf转载 2017-08-29 15:42:03 · 5212 阅读 · 0 评论 -
system函数遇到的问题
这几天调程序(嵌入式linux),发现程序有时就莫名其妙的死掉,每次都定位在程序中不同的system()函数,直接在shell下输入system()函数中调用的命令也都一切正常.就没理这个bug,以为是其他的代码影响到这个,或是内核驱动文件系统什么的异常导致,昨天有出现了这个问题,就随手百了一下度,问题出现了,很多人都说system()函数要慎用要少用要能不用则不用,system()函数不稳定?转载 2017-08-28 10:38:34 · 1523 阅读 · 0 评论 -
gets和scanf函数的区别
scanf( )函数和gets( )函数都可用于输入字符串,但在功能上有区别。若想从键盘上输入字符串"hi hello",则应该使用__gets__函数。gets可以接收空格;而scanf遇到空格、回车和Tab键都会认为输入结束,所有它不能接收空格。char string[15]; gets(string); /*遇到回车认为输入结束*/scanf("%s",string)转载 2017-09-04 11:25:52 · 367 阅读 · 0 评论 -
system系统调用的使用
system() 系统调用在应用中很广泛;可以直接在C代码中调用命令,执行一些特殊操作,用法如下.1. 直接执行命令: 可以在c文件中直接执行命令,这是基本用法,例如: system("mkdir test"); system("chmod 777 test.bin"); 等等。2. 如果需要执行的命原创 2016-07-29 15:32:36 · 2601 阅读 · 0 评论 -
sp<>,wp<>
Android中定义了两种智能指针类型,一种是强指针sp(strong pointer),另外一种是弱指针(weak pointer)。其实称之为强引用和弱引用更合适一些。强指针与一般意义的智能指针概念相同,通过引用计数来记录有多少使用者在使用一个对象,如果所有使用者都放弃了对该对象的引用,则该对象将被自动销毁。弱指针也指向一个对象,但是弱指针仅仅记录该对象的地址,不能通过弱指针来访问该对象,转载 2016-01-21 16:25:33 · 359 阅读 · 0 评论