![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C
hnlgzb
所见即所得
展开
-
C程序中文乱码的处理(五种方法)
为936(ANSI/OEM - 简体中文 GBK),而C程序文件默认编码格式为utf-8,由于编码格式不一致,程序运行时往往会出现中文乱码的情况。如果不想每次在vs code运行C程序文件都修改编码格式,可以将cmd.exe添加到系统环境变量,并直接修改setting.json配置文件。如果是在vs2022运行出现中文乱码,可以通过自定义命令,设置高级保存选项,将编码格式修改为gbk、gb2312或者gb18030等即可。以记事本方式打开C程序文件,点击【文件】–【另存为】,选择。:修改vs code的。转载 2024-06-12 15:56:34 · 1024 阅读 · 0 评论 -
gcc程序的编译过程和链接原理
和都已经完成链接操作。又如:gcc -c -o hello.o hello.c。转载 2024-02-03 17:52:27 · 154 阅读 · 0 评论 -
在windows下Visual Studio编写代码出现 #include<unistd.h>报错为:No such files or directory的解决方法
C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Auxiliary\VS\include(我的路径,可以在自己在安装的路径下去找)在windows下Visual Studio编写代码出现 #include报错为:No such files or directory的解决方法。打开include,自己新建一个uniste.h文件。在如下路径下找到include文件。转载 2022-09-17 08:19:17 · 2718 阅读 · 0 评论 -
源码到可执行文件的4个动作 5种状态
mm原创 2022-04-05 09:45:48 · 273 阅读 · 0 评论 -
warning: ‘gets’ is deprecated (declared at /usr/include/stdio.h:638) [-Wdeprecated-declarations]
warning: ‘gets’ is deprecated (declared at /usr/include/stdio.h:638) [-Wdeprecated-declarations]5.c: In function ‘getinfo’:5.c:20:2: warning: ‘gets’ is deprecated (declared at /usr/include/stdio.h:638) [-Wdeprecated-declarations]gets(temp.fname);警告..转载 2021-03-29 19:23:55 · 7345 阅读 · 1 评论 -
Visual Studio2017快捷键
项目相关的快捷键Ctrl + Shift + N: 新建项目Ctrl + Shift + B或者 F7: 编译项目(Build解决方案) Ctrl + Alt + L: 显示 Solution Explorer(解决方案资源管理器) Shift+Alt+ A: 添加新项目到项目编辑相关的键盘快捷键 Ctrl + Enter: 在当前行插入空行 Ctrl + Shift + Enter:在当前行下方插入空行Ctr...转载 2020-05-27 22:42:14 · 362 阅读 · 0 评论 -
C语言错误调试集合
1.Error] stray '\32' in program在程序中,有中文格式的字符,原创 2020-04-27 22:46:54 · 211 阅读 · 0 评论 -
这才是你需要的C语言、C++学习路线!
小伙伴们,大家好。关于C语言和C++的学习路线终于梳理完了。当然我也只能从我曾经近3年的通信公司后台开发经历和目之所及的世界,跟大家聊聊这个话题。这块的东西很多很杂,不过梳理和总结之后,回过头来看,其实学习思路、学习路线应该还是比较清晰的。由于个人认知有限,不足的地方也欢迎大家评论里补充。先聊几个有趣的问题这几个问题都是私信里常被问到的,也是我当时学习过程中的一些疑惑。问:为...转载 2020-04-27 09:45:12 · 165 阅读 · 0 评论 -
代码阅读——十个C开源项目
转自:https://blog.csdn.net/weixin_33750452/article/details/858238201. WebbenchWebbench是一个在linux下使用的非常简单的网站压测工具。它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性能,最多可以模拟3万个并发连接去测试网站的负载能力。Webbench使用C语言编写...转载 2020-03-18 00:30:01 · 162 阅读 · 0 评论 -
适合C语言初学者练手的17个小项目
转自http://www.360doc.com/content/18/0325/21/51484742_740149637.shtml转载 2020-03-17 22:11:53 · 2927 阅读 · 1 评论 -
预处理指令
#define 宏名 字符串#define 宏名 (参数1,参数2,....,参数n) 字符串#undef 宏名#include "文件名" (或<文件名>)# if 常量表达式# ifdef 宏名# ifndef 宏名# else# endif# pragma程序设计语言的预处理的概念:在编译之前进行的处理。 C语言的预处理主要有三个方面的内容: 1.宏定义...转载 2019-12-29 17:50:58 · 181 阅读 · 0 评论 -
什么是二进制文件
转自:https://baike.baidu.com/item/%E4%BA%8C%E8%BF%9B%E5%88%B6%E6%96%87%E4%BB%B6/996661包含在ASCII及扩展 ASCII字符中编写的数据或程序指令的文件。计算机文件基本上分为二种:二进制文件和 ASCII(也称纯文本文件),图形文件及文字处理程序等计算机程序都属于二进制文件。这些文件含有特殊的格式及计算机代码...转载 2019-12-28 22:10:42 · 3917 阅读 · 0 评论 -
二维数组指针表示,C语言指针引用二维数组详解
转自:http://c.biancheng.net/view/227.html指针变量可以指向一维数组中的元素,当然也就可以指向二维数组中的元素。但是在概念和使用方法上,二维数组的指针比一维数组的指针要复杂一些。要理解指针和二维数组的关系首先要记住一句话:二维数组就是一维数组,这句话该怎么理解呢?假如有一个二维数组:复制纯文本复制int a[3][4] = {{1, 3,...转载 2019-12-22 23:27:44 · 555 阅读 · 0 评论 -
JNI以前的一些笔记--4
#JNI是什么>java native interface : java 本地接口>让java语言调用底层语言的技术就叫JNI#JNI有什么用>规范,让java语言和底层的c/c++语言可以互相访问,互相调用。>适配器模式,让java的数据类型和c/c++语言的数据类型可以互相对应。##应用场景* 操作硬件(编写驱动,用java代码调用底层的c代码)&g...原创 2019-12-11 12:59:32 · 116 阅读 · 0 评论 -
Android JNI 篇 - JNI回调的三种方法(精华篇)
转自https://www.jianshu.com/p/e576c7e1c403开门见山, 不废话上效果, 上代码: c层回调进度device-2017-03-23-184023.gif第一种方法在当前函数(同一个线程)里面回调,直接用findClass或者GetObjectClass,进行回调(国内各大博客介绍的普遍方法):java 层代码:/** * Crea...转载 2019-03-12 19:47:31 · 2507 阅读 · 0 评论 -
学习JNI(八) :C语言:15_静态内存和动态内存
#动态内存分配和静态内存分配* 动态 new出来的都是动态的 需要程序员手工的申请,需要手工的释放,运行在堆里面。必须由程序员手工的回收,或者垃圾回收器去回收内存空间。大小可以无限大,整个windows操作系统系统的内存。* 静态 定义出来的都是静态的 int i; int j; 运行在栈里面,后进先出的结构,方法执行完毕,操作系统会自动的回收内存空间。都是有大小限制。//ma...原创 2019-03-10 23:42:30 · 254 阅读 · 0 评论 -
JNI参考一些博客
https://www.jianshu.com/p/ac00d59993aa转载 2019-03-04 00:16:07 · 102 阅读 · 0 评论 -
学习JNI(十三) :JNI开发的流程 / NDK开发工具的目录结构
#JNI开发的流程规范,中间人,中间件 c/c++ <---> javaNDK: native develop kits 谷歌给安卓程序员提供的一个做jni开发的工具##NDK开发工具的目录结构- doc 开发帮助文档- build c语言编译的工具链 cygwin- platform 平台: 指定了编译针对的Android平台 - arm 处理器架构 手机...原创 2019-03-12 15:11:12 · 333 阅读 · 0 评论 -
学习JNI(十二) :C语言:21_宏定义
Mark#include <stdio.h> #define PI 3.14159 typedef int haha;main() { printf("pi=%f\n",PI); system("pause"); }原创 2019-03-12 11:44:28 · 232 阅读 · 0 评论 -
学习JNI(一):dev c++简介
dev c++ 使用的C编译器是GCC,然后使用的C标准是C99原创 2019-03-10 19:49:54 · 255 阅读 · 0 评论 -
修改VS的开发环境
转自https://www.cnblogs.com/sanduo8899/p/4485689.html可能会有朋友和我一样,当安装完VS完成之后,没有选择默认的开发模板,在后面添加新项目时,总是不能选择默认的开发语言,下面给出个简单步骤,记录一下以备用。看图吧1.工具》导入和导出设置2.选择重置所有设置3.果断的选择否4.选择你所中意的,噢耶...转载 2019-03-10 19:08:00 · 2336 阅读 · 0 评论 -
C语言简介
C 语言是一种通用的、面向过程式的计算机程序设计语言。1972 年,为了移植与开发 UNIX 操作系统,丹尼斯·里奇在贝尔电话实验室设计开发了 C 语言。C 语言是一种广泛使用的计算机语言,它与 Java 编程语言一样普及,二者在现代软件程序员之间都得到广泛使用。当前最新的C语言标准为 C11 ,在它之前的C语言标准为 C99。...原创 2019-03-10 19:04:35 · 362 阅读 · 0 评论 -
安装visual studio并启动
1.在官网下载的是vs_professional版本,安装也没啥好说,直接下一步下一步、https://visualstudio.microsoft.com/2.启动启动路径:D:\XXXX\Common7\IDE\devenv.exe3.选择开发设置因为主要是用来开发C或者C++,按理应该选择 C++,但还是看下常规是怎么的界面,所以选择了常规。常规应该也可以开...原创 2019-03-10 17:31:30 · 1869 阅读 · 0 评论 -
MinGW MinGW-w64 TDM-GCC等工具链之间的区别与联系
转自https://blog.csdn.net/crazycoder8848/article/details/25164471相同点:一、 他们都是用于编译生成Windows应用程序的工具链。二、 他们都是基于gcc的。不同之处(只说大的):一、项目之间的关系1. MinGW应该是最先诞生的。2. MinGW-w64项目最初是做为MinGW的一个分支而诞生,但现在已经...转载 2019-03-08 19:38:50 · 808 阅读 · 0 评论 -
优化白板书写慢的问题的一个方向
https://developer.android.google.cn/guide/platform原创 2019-03-08 14:59:41 · 434 阅读 · 0 评论 -
OpenGL ES
OpenGL ES (OpenGL for Embedded Systems) 是 OpenGL 三维图形 API 的子集,针对手机、PDA和游戏主机等嵌入式设备而设计。该API由Khronos集团定义推广,Khronos是一个图形软硬件行业协会,该协会主要关注图形和多媒体方面的开放标准。OpenGL ES (OpenGL for Embedded Systems) 是 OpenGL三维图形 ...原创 2019-02-26 16:43:26 · 147 阅读 · 0 评论 -
visual studio ide 和 visual studio code 区别
原创 2019-02-26 16:17:16 · 11409 阅读 · 0 评论 -
学习JNI(二):window平台调用Java字节码文件
C语言调用Java字节码文件Hello.javapublic class Hello { public static void main(String[] args) { System.out.println("hello from java!"); }}Hello.c#include <stdio.h>main(){// prin...原创 2019-03-10 20:17:10 · 194 阅读 · 0 评论 -
学习JNI(三):C语言的基本数据类型
##java的数据类型java语言8大基本类型数据* byte 8位 1个字节* short 16位 2个字节* int 32位 4个字节* long 64位 8个字节* double 64位 8个字节* boolean 8位 1个字节* char 16位 2个字节* float 32位 4个字节##c语言的数据类型char 的...原创 2019-03-10 20:42:04 · 267 阅读 · 0 评论 -
学习JNI(十一) :C语言:21_结构体和联合体
#include <stdio.h>main(){ //结构体 struct date { int year;int month;long long day; }today; //联合体 有点像Java 中的泛型 T union { long i; int k; char c; } mix; printf("date:%...原创 2019-03-12 11:41:52 · 201 阅读 · 0 评论 -
学习JNI(十) :jni.h文件 重要的一笔
/* * Copyright (C) 2006 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * Y...原创 2019-03-12 11:33:18 · 346 阅读 · 0 评论 -
学习JNI(九) :C语言:结构体/函数的指针
JAVA就是C++包装加上垃圾回收机制和JVM结构体每个学生都有age score name.... int age; int score; char name[100]; // c语言里面的字符串一般都存放在字符数组中. struct Student{ int age; float score; char sex;};int main(void){...原创 2019-03-10 23:57:54 · 647 阅读 · 0 评论 -
学习JNI(八) :C语言:多级指针
#include <stdio.h> main() { int i = 3; int* p = &i; int** q = &p; int*** r = &q; //需求: 把i打印出来 //指针的指...原创 2019-03-10 23:48:29 · 130 阅读 · 0 评论 -
学习JNI(七) :12_指针和数组之间的关系/13_指针的运算/14_指针的常见错误
指针和数组之间的关系#include <stdio.h> /** arr[] 数组 length 数组的长度 **/void printArr(char arr[], int length){ int i=0; for(;i<length;i++){ printf("arr[%d]=%c\n",i,arr[i]);...原创 2019-03-10 23:09:06 · 187 阅读 · 0 评论 -
学习JNI(六) :值传递和引用传递
#java语言的值传递和引用传递>准确的讲,所有的语言都是值传递@xxxxxx 对象的地址原创 2019-03-10 22:33:49 · 896 阅读 · 0 评论 -
学习JNI(五) :C语言之指针
#指针什么是指针:指针就是一块内存空间,就是一个内存地址默认c语言的指针 32位内存空间0x00000000~ 0xffffffff#指针和指针变量是两个不同的概念* 指针代表的是一块内存地址* 指针变量是一个存储指针的变量,存储这块内存地址l指针就是地址,地址就是指针 l地址就是内存单元的编号 l指针变量是存放地址的变量 l指针和指针变量是两个不同的概念 l但是要...原创 2019-03-10 22:24:41 · 661 阅读 · 0 评论 -
学习JNI(四):C语言的输出输入函数
输出函数/*%d - int%ld – long int%c - char%f - float%u – 无符号数%hd – 短整型 short%lf – double%x – 十六进制输出 int 或者long int 或者short int%o - 八进制输出%s – 字符串*/#include <stdio.h> main() { ...原创 2019-03-10 21:31:06 · 191 阅读 · 0 评论 -
通过Hardware Layer提升Android动画性能
转自https://www.jianshu.com/p/f1feafffc365当有人问我关于动画性能表现不佳问题的时候,我首先会询问他们是否使用了Hardware Layer层。你的View可能在执行动画期间的每一帧都进行重绘,如果使用View Layer,可以避免重绘每一帧,因为View的渲染一旦进入离屏缓冲区就能够被复用。另外,Hardware Layer缓存在GPU上(译者注...转载 2019-03-05 16:23:28 · 180 阅读 · 0 评论