- 博客(27)
- 收藏
- 关注
原创 MapViewOfFile映射文件块到内存失败,GetLastError返回0x46c的问题。
在映射大文件时,并不能一次将全部文件映射到内存中,毕竟内存空间有限^_^,所以需要分块映射,幸好“万能的微软”肯定已经考虑了这个问题的,我们可以通过改变MapViewOfFile的参数来设置需要映射文件的偏移和指定大小,但问题就出在参数的问题上,它并不是能够任意去指定的,需要以系统页大小去对齐。哦不.....,我的耐心已经要被消耗完了(看来我的耐心有点差,呵呵呵呵o(* ̄︶ ̄*)o)。微软官方文档是这么解释的,英文文档我也看过,是一样的解释。主要看dwPageSize这个参数,文档是这么说的。
2023-09-20 09:40:37
1060
原创 自学记录--文件操作
#include<stdio.h> #include<errno.h> #include<string.h> //fputc fgetc fputs fgets fprintf fscanf fwrite fread fseek ftell rewind //typedef struct stu //{ // char name[20]; // int age; // float garde; //}stu; //int main() //{ // // stu s.
2021-12-01 19:05:59
593
原创 自学记录--动态内存分配
//栈区—局部变量,函数的形式参数 //堆区—动态内存分配 --malloc,free,calloc,realloc。 //静态区-全局变量,静态变量,static #include<stdlib.h> #include<stdio.h> #include<errno.h> #include<string.h> //int mian() //{ // // int* p = (int*)malloc(10 * sizeof(int));//如果参数size为.
2021-12-01 19:05:00
718
原创 利用结构体实现一个简单的通讯录
test.c #define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include"tongxunlu.h" void menu() { printf("********************************\n"); printf("**** 1.add 2.del *******\n"); printf("**** 3.search 4.modify *******\n"); printf("***
2021-10-30 17:06:32
485
原创 自定义数据类型的学习
#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<assert.h> //void* my_memcpy(void* dest, const void* src, int num) //{ // void* ret = dest; // assert(dest != NULL); // assert(dest != NULL); // while (num--) // { // *(char*)dest = .
2021-10-22 19:51:55
114
原创 字符串函数的学习
#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<assert.h> #include<string.h> //void left_move(char*arr,int k) //{ // assert(arr); // int i = 0; // int j = 0; // int sz = strlen(arr); // for (j = 0; j < k; j++) // { // .
2021-10-22 19:50:40
94
原创 杨辉三角与真假话判断
#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<string.h> //打印杨辉三角 //int main() //{ // int arr[10][10] = { 0 }; // int j = 0; // int i = 0; // for (i = 0; i < 10; i++) // { // for (j = 0; j <= i; j++) // { // if (j == 0 .
2021-10-22 19:46:59
138
原创 习题与讲解
#include<stdio.h> #include<string.h> //数组名是首元素的地址,除了以下两种情况; //1.sizeof(数组名)-数组名表示整个数组; //2.&数组名-数组名表示整个数组 // //int main() //{ // int a[] = { 1,2,3,4 }; // printf("%d", sizeof(a + 0));//4/8 - 数组名表示首元素地址,加0还是首元素地址; // printf("%d", sizeof(*a).
2021-09-22 23:08:55
129
原创 回调函数与qsort函数的学习
#include<stdio.h> #include<stdlib.h> #include<string.h> //回调函数 //void calc(int (*pf)(int, int)) //{ // int x = 0; // int y = 0; // printf("请输入两个操作数:"); // scanf("%d%d", &x, &y); // printf("%d\n", pf(x,y)); //} //int add(int x, in.
2021-09-17 22:13:07
119
原创 函数指针的学习
呵呵,不知不觉就快半个月没好好学习了。害,任重道远啊。 #include<stdio.h> //函数指针 - 是指向函数的指针 //int add(int x, int y) //{ // int z = 0; // z = x + y; // return z; //} //int main() //{ // int a = 20; // int b = 10; // int arr[10] = { 0 }; // //&函数名 和 函数名 是等价的; // //printf(
2021-09-13 22:15:42
90
原创 数据的存储
#include<stdio.h> #include<string.h> #include<assert.h> /* char* my_strcpy(char* str,const char* src) { assert(str!=NULL); assert(src!=NULL); char* ret = str; while(*str++ = *src++) { ; } return ret;.
2021-08-25 21:03:02
111
原创 结构体续与调试问题
/* #include<stdio.h> typedef struct stu { char name[20];//对于字符串要给出具体的空间,不然会报错. short age; char tele[15]; char sex[5]; }stu; void print1(stu s) { printf("name: %s\n",s.name); printf("age: %d\n",s.age); printf("tele: %s\n",.
2021-08-21 21:02:07
87
原创 题目和结构体初步认识
//求n的阶乘 /* #include<stdio.h> int count_n(int n) { int m = 0; int sum = n; for(m=1;m<n;m++) { sum=sum*m; } return sum; } //用递归求n的阶乘 int count_n1(int n) { if(n>1) { return count_n1(n-1)*n; } .
2021-08-19 22:27:48
136
原创 指针和计算二进制中的1
//用指针-指针计算字符串长度 /* #include<stdio.h> int my_len(char* arr)// 或者可以写成(char arr[]) { char* stary = arr; char* end = arr; while(*end != '\0') { end++; } return end - stary; } int main() { char arr[] = "hello"; int.
2021-08-17 21:21:31
122
原创 扫雷-简易版
game.cpp #include "game.h" void initboard(char board[ROWS][COLS], int rows, int cols, char set) { int i = 0; int j = 0; for(i=0;i<rows;i++) { for(j=0;j<cols;j++) { board[i][j] = set; } } } vo
2021-08-09 20:50:11
99
原创 三子棋(完整版)-第十天
test.cpp #include<stdio.h> #include"game.h" void game() { int ret = 0; //数组存放要走的棋盘信息 char board[ROW][COL] = {0}; //初始化棋盘,全部空格; InitBoard(board,ROW,COL); //打印棋盘 DisplayBoard(board,ROW,COL); //下棋 while(1) {
2021-08-08 16:24:58
105
原创 关于QT 出现undefined reference to (char (*) [3], int, int)‘的错误问题
本人是一个c初学者(大概10来天吧),偶然发现一种解决方法,大家出现这种错误可以尝试使用一下。因为代码本身是没有问题的,在vs2019上可以成功编译。导致错误的原因是更改了自己写的头文件强制定义变量的数值(#define ROW 3 #define COL 3)。改变数值后编译出现undefined reference to `InitBoard(char (*) [3], int, int)'错误。(还有一个类似的undefined reference to DisplayBoard函数错误)。解决..
2021-08-07 22:35:30
1054
4
原创 三子棋(不完全版)
//dishitian.cpp文件 #include<stdio.h> #include"game.h" void game() { //数组存放要走的棋盘信息 char board[ROW][COL] = {0}; //初始化棋盘,全部空格; InitBoard(board,ROW,COL); //打印棋盘 DisplayBoard(board,ROW,COL); //下棋 while(1) { //玩.
2021-08-07 21:47:48
96
原创 数组-第九天
//二维数组初始化时,行可以省略,,列不能省略 //int arr[][4] = {}; //二维数组的下标调用 /* #include<stdio.h> int main() { int arr[3][4] = {{1,2,3},{4,5}}; int i = 0; int j = 0; for(i=0;i<3;i++) { for(j=0;j<4;j++) { printf("%d .
2021-08-06 20:38:57
85
原创 函数的递归-第八天
//函数的嵌套调用和链式访问。 /* #include<stdio.h> int main() { printf("%d",printf("%d",printf("%d",43)));//结果是4321,因为printf函数的返回值是打印在屏幕上的个数 return 0; } */ // 函数声明放在头文件中,函数定义放在对应的源文件中.例add. /* #include"add.h" #include<stdio.h> int main() { int .
2021-08-05 20:12:37
88
原创 函数——第七天
//函数的使用 /* #include<stdio.h> #include<string.h> int main() { char arr1[] = "bit"; char arr2[] = "##############"; strcpy(arr2,arr1); printf("%s",arr2); return 0; } */ /* #include<stdio.h&g.
2021-08-04 20:10:30
83
原创 循环与函数部分-第六天
//猜数字游戏 /* #include<stdio.h> #include<stdlib.h> #include<time.h> void menu() { printf("*******************\n"); printf("**1:paly * 0:exit**\n"); printf("*******************\n"); } void game() { int ret = 0; int guess.
2021-08-02 15:35:57
94
原创 分支与循环(3)-第五天
//给出三个数对其从大到小排列 /* #include<stdio.h> int main() { int a = 0; int b = 0; int c = 0; printf("请输入三个数:"); printf("a= b= c=\n"); scanf("%d %d %d",&a,&b,&c); if(a>b) { if(b>c) printf("%.
2021-07-31 21:47:14
91
原创 分支与循环(2)-第四天
//不可在for循环体内修改循环变量,防止for循环失去控制。 //建议for语句的循环控制变量的取值采用“前闭后开区间”写法; //for循环的初始化,调整,判断都可以省略。但是:for循环的判断部分如果被省略,那判断条件就是恒为真; //计算n的阶乘 /* #include<stdio.h> int main() { int i = 1; int n = 0; int ret = 1; printf("请输入一个数:"); scanf("%d",&.
2021-07-30 21:15:07
86
原创 分支与循环(1)-第三天学习
//判断一个数是否为奇数, //输出1-100之间的奇数。 /* #include<stdio.h> int main() { int num = 0; printf("请输入一个整数:"); scanf("%d",&num); if(num%2 == 0) printf("偶数"); else printf("奇数"); return 0; } */ //写错了???? /* #include<.
2021-07-29 21:16:41
78
原创 第二天的学习
//结构体的创建 /* #include<stdio.h> #include<string.h> struct book { char name[20];//c语言程序设计 short price;//55 }; int main() { //利用结构体类型-创建一个该类型的结构体变量; struct book b1 = {"c语言程序设计",55}; struct book*pb = &b1; //利用pb打印出我的书名和.
2021-07-28 22:02:50
72
原创 第一天的学习
//输入两个数,得出他们的和 /* #include<stdio.h> int main() { int num1 = 0; int num2 = 0; int sum = 0; scanf("%d%d",&num1,&num2); sum = num1 + num2; printf("sum = %d\n", sum); //cout<<sum; return 0; }*/ //引用第三个变量实现两个整型互换; /* #include <stdio..
2021-07-28 22:01:25
78
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅