c语言中文字如何存储

大哥大姐,请说下,c语言中文字如何存储
最新回答
巷陌

2024-11-07 07:30:00

可以用文件操作函数写入文件内储存。

1、C语言标准库提供了一系列文件操作函数。文件操作函数一般以f+单词的形式来命名(f是file的简写),其声明位于stdio.h头文件当中。例如:fopen、fclose函数用于文件打开与关闭;fscanf、fgets函数用于文件读取;fprintf、fputs函数用于文件写入;ftell、fseek函数用于文件操作位置的获取与设置。
2、例程:

#include<stdio.h>
int a;
char b,c[100];
int main(){
    FILE * fp1 = fopen("input.txt", "r");//打开输入文件
    FILE * fp2 = fopen("output.txt", "w");//打开输出文件
    if (fp1==NULL || fp2==NULL) {//若打开文件失败则退出
        puts("不能打开文件!");
        return 0;
    }
    fscanf(fp1,"%d",&a);//从输入文件读取一个整数
    b=fgetc(fp1);//从输入文件读取一个字符
    fgets(c,100,fp1);//从输入文件读取一行字符串
    
    printf("%ld",ftell(fp1));//输出fp1指针当前位置相对于文件首的偏移字节数
    
    fputs(c,fp2);//向输出文件写入一行字符串
    fputc(b,fp2);//向输出文件写入一个字符
    fprintf(fp2,"%d",a);//向输出文件写入一个整数
    
    fclose(fp1);//关闭输入文件
    fclose(fp2);//关闭输出文件,相当于保存
    return 0;
}
考考死

2024-11-07 07:36:51

没必要知道什么数据类型,他只是代表几个字节的一个标志。
你当知道的应该是一个字节有8位。除BOOL型外,一般的其他类型都是在字节的基础上构建起来的。
比如 INT型占2个字节,CHAR型一个字节等。
一个汉字在计算机中是占2个字节的,至于如何编码的,你可以在相关书上找到答案。
所以,你只要掌握好对每个字符的操作,程序不是问题。
希望上面的回答对你有帮助。
我污但不色

2024-11-07 00:47:32

在c语言中,如果输出中文字符,可以通过printf函数直接输出。printf函数在内部提供这种机制,实现宽字符的转换,因此都可以正常输出,比如:
printf("中文测试\n");
另外也可以使用wprintf来输出存储在变量的中文字符,需要进行语言的区域设置。示例如下:示例如下,输出宽字符“中”字。
#include
#include
int main()
{
setlocale(lc_all, "chs");
wchar_t wc = l'中';
wprintf(l"%c\n",wc);
return 0;
}
热带的企鹅

2024-11-07 10:19:21

使用char类型的指针吧,然后动态申请内存进行存储
雨点躲日落

2024-11-07 11:15:48

char *p=new char[**];//**就是动态的长度
每个汉字占两个char型,‘\0’为结束符