作为一个C的新手(虽然学的第一门语言就是C,可是用C实际开发项目却是最近的事情),对使用C过程中遇到的各类问题.疑惑.知识漏洞进行弥补无疑是非常有必要的,于是决定将每次遇到的知识漏洞写到博客上. 今天在写代码的过程中对一个函数进行了重构,函数的用处是将一块内存中的内容打印成16进制表示的字符串:很悲哀的输入的是一个char指针:char* buffer:当调用Format("%02X",*buffer)的时候出现问题了, 比如:0xB0输出变成了:“FFFFFFB0”:最后发现是cha…
参考:http://www.cnblogs.com/dire/p/5222968.html 参考baidu: char和int的定义我是清楚的,现在有一个问题: 1.设A和B是int型,C是char型,那么if (C<(A-B)) 这个语句可不可以,有没有BUG存在? 2.设A和B是char型,C是int型,那么C=(A+B); 这个语句有没有问题呢? 3.设A和B是int型,C是char型,那么C=(A+B); 这个语句有没有问题呢? 回答: C语言是一种弱类型语言,如果使用熟练了你就会知道,…
C 语言包含的数据类型如下图所示: 一.数据类型与“模子”short.int.long.char.float.double 这六个关键字代表C 语言里的六种基本数据类型. 怎么去理解它们呢? 举个例子:见过藕煤球的那个东西吧?(没见过?煤球总见过吧).那个东西叫藕煤器,拿着它在和好的煤堆里这么一咔,一个煤球出来了.半径12cm,12 个孔.不同型号的藕煤器咔出来的煤球大小不一样,孔数也不一样.这个藕煤器其实就是个模子. 现在我们联想一下,short.int.long.char.float.dou…
C 语言包含的数据类型: 一.数据类型与“模子”short.int.long.char.float.double 这六个关键字代表C 语言里的六种基本数据类型. 怎么去理解它们呢? 举个例子:见过藕煤球的那个东西吧?(没见过?煤球总见过吧).那个东西叫藕煤器,拿着它在和好的煤堆里这么一咔,一个煤球出来了.半径12cm,12 个孔.不同型号的藕煤器咔出来的煤球大小不一样,孔数也不一样.这个藕煤器其实就是个模子. 现在我们联想一下,short.int.long.char.float.double 这…
目录 前景提示 这里的结构体处理的步骤 一.char数组类型的处理 二.char数组指针类型的处理 三.全部代码 1. char数组 2. char数组指针 结语 前景提示 定义一个结构体,结构体中有两个变量,其中一个是char类型的数组,那么,怎么向这个数组中插入数据,打印数据呢? typedef struct SequenceList { // 数组的元素 char element[20]; // 数组的长度 int length; }; 定义一个结构体,结构体中有两个变量,其中一个是cha…
这些数据类型的sizeof具体长度依赖于编译器和操作系统(32-bit or 64-bit) 1: 首先,参见c99标准 标准中没有定义这些数据类型的长度,而是定义了这些数据类型能表达的大小范围的最小极限. C99链接: http://www.open-std.org/JTC1/SC22/WG14/www/docs/n1256.pdf The C++ standard does not specify the size of integral types in bytes, but it spe…
1. char常量.变量 使用单引号‘’引起来的就是char的常量 ‘a’是一个char类型的常量 “a”是一个字符串类型的常量 1是一个int型的常量 ‘1’是一个char型的常量 char a; //定义了一个变量,类型是char,名字叫a char在内存中占用1个字节,c语言中没有BYTE类型的数据,但可以用char来替代. char a = 10;因为char的本质就是一个BYTE大小的整数 ‘a’这个其实就是指的字符a的ASCII码,所有的英文字符都是是一个BYTE的整数,这个整数就是…
itoa 功  能:把一整数转换为字符串 函  数:char *itoa(int value, char *string, int radix); 解  释:itoa 是英文integer to array(将 int 整型数转化为一个字符串,并将值保存在数组 string 中)的缩写. 参  数:value: 待转化的整数.          radix: 是基数的意思,即先将value转化为radix进制的数,范围介于2-36,比如10表示10进制,16表示16进制.          *s…
2013-07-09 18:55:42 EOF是文件的结束符,具体可以作为文本文件的结束符,也可以作为键盘输入char类型数据时的结束符.对于不同的系统,EOF的定义可能不同,一般定义为-1.因为char类型的数据范围是0~255,不可能是-1,EOF定义为0~255之外的数据理论上都是可以的. 一般在C语言中用getchar()函数或scanf获取char类型时,可用EOF作为结束符.但对于C++,若用getchar()函数或scanf获取char类型时,也可用EOF作为结束符,这是兼容C的特…
字符字面值一般是用一对单引号来表示.char类型一般就是用字符字面值来初始化.赋值.由于char类型的是单字节长度,当给char类型的变量用字符字面值赋值时,当单引号里面的内容超过一个字节时,系统会自动截取一个字节的内容给char变量,忽略其他的字节内容.    比如char a='1234';c++会认为单引号里的每一个数值都看做一个字符字面值,也就是说1 2 3 4各占一个字节,'1234'也就是一共占4个字节,然而char变量a只是占一个字节,初始化它的值却有4个字节,系统要从'1234'…
#include <stdio.h> #include <stdlib.h> struct dangdang { ]; ]; ]; int num; int bugnum; ]; ]; double RMB; int dangdang;//成员名可以和类名同名 }dx,dy= { "1111dfd1f@dfd", "lala", "chongq", , , 54.32, }; void main() { dx=dy; pr…
原始代码: void split(char * p,char * str){ /* 传入一个数组进行p和一个以什么进行分割的str,返回切片后的值 */ int i = 0, j = 0; char tmp[32][32] = {0}; char *p1 = (char *)malloc(1024); while((p1 = strchr(p, *str)) != NULL) //10行 { strncpy(tmp[i], p, strlen(p) - strlen(p1)); p = p1 +…
程序: char* addrCom; addrCom= ......//赋值 == (int)addrCom) //导致编译出错 { ...... } 编译时出现错误: error: cast from ‘char*’ to ‘int’ loses precision 因为我编译的系统为linux64位,其指针类型和long型大小相等(8B)而与int型4B,故会出现:loses precision.故:先将char*-->long,然后从long到int自动隐式转换. 将(int)addrCo…
from:http://www.cnblogs.com/A123456A/archive/2013/01/25/2876634.html char,short ,int ,long,long long,unsigned long long数据范围   速查表: char -128 ~ +127 (1 Byte)short -32767 ~ + 32768 (2 Bytes)unsigned short 0 ~ 65536 (2 Bytes)int -2147483648 ~ +214748364…
题目要求: 将输入的大写字母转成对应小写的后5个,如A转换后为f:如果转换后大于z则从a重新计,即多出1就转成a,多出2就转成b以此类推. Java代码: ```java private static char exchange(char c) { if (c > 'Z' || c < 'A') { throw new RuntimeException("必须为26个大写字母中的一个"); } int begin = 'a', end = 'z', cur = Charac…
1.char变为int时高位符号扩展问题 int main() { char a = 0x9a; int util; util = (int)a; if(util > 0) printf("positive\n"); else printf("negative\n"); return 0; } 0x9a --- 1001 1010 但是强制转换的过程中,int是有符号的,需要对0x9a进行符号扩展,也就是用最高位1来扩展其他3个字节(架设int为4个字节)就会…
#include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <string.h> #include <errno.h> #include <netdb.h> #include <sys/socket.h> #include <netinet/in.h> #include <sys/types.h> #include <…
import java.util.Scanner; public class test7 { public static void main(String[] args) { // TODO Auto-generated method stub Scanner in=new Scanner(System.in); String a=in.next(); char b[]=a.toCharArray(); System.out.println(chartoint(b)); } public sta…
1.字节:byte:用来计量存储容量的一种计量单位:位:bit 2.一个字节等于8位  1byte = 8bit char占用的是2个字节 16位,所以一个char类型的可以存储一个汉字. 整型: byte:1个字节 8位 -128~127 short :2个字节 16位 int :4个字节 32位 long:8个字节 64位 浮点型: float:4个字节 32 位 double :8个字节 64位 注:默认的是double类型,如3.14是double类型的,加后缀F(3.14F)则为flo…
string str = "123"; string 转 int int i = atoi( str.c_str() ); string 转 float float f = atof( str.c_str()  ); string 转 char char c [32]; strintf( c, "%s", str.c_str() ); char float int 转 string string str1; strintf( c, "%d%.2f"…
#include<iostream> #include<stdio.h> using namespace std; ; char *itostr (int n,char *String) { String[i]=(n%)+; i++; ==) return String; else itostr(n/,String); } int main() { int n; cout<<"input the number:"<<endl; cin&g…
public class Demo14{ //A到Z的所有字符,使用char和int转换 public static void main(String[] args) { for(int i = 65;i < 91; i++) { System.out.print((char)i + " "); } }} Tips:这里有两种方式:for(int i = 'A'; i <= 'Z'; i++) for(int i = 65 ; i < 91; i++) 通过后一种形式…
package shugen; /*ASCLL码表 * 48 数字0 * 49 1 * 50 2 * 51 3 * 52 4 * 53 5 * 54 6 * 55 7 * 56 8 * 57 9 */ public class charTest { public static void main(String[] args) { char a='1'; int num1=a; int num2=a-48; System.out.println(num1); System.out.println(…
前记 写程序,就像建房子,对于高超的建筑师来说,是要有一些好的素材的.作为一个程序员,见了好用的素材存起来,以备后面需要,也是一门很好的修养. 实例代码 一个char 转int的经典代码,这里分享一下: #include <stdio.h> typedef unsigned char uint8_t; int parseInt(uint8_t* chars, int len) { int sum = 0; //int len = strlen(chars); for (int x = 0; x…
char转int 1) '; if (Character.isDigit(ch)){ // 判断是否是数字 int num = Integer.parseInt(String.valueOf(ch)); System.out.println(num); } 2) '; if (Character.isDigit(ch)){ // 判断是否是数字 '); System.out.println(num); } int转char ; '); System.out.println("Number &qu…
ByReference类有很多子类,这些类都非常有用. ByteByReference.DoubleByReference.FloatByReference. IntByReference.LongByReference. NativeLongByReference.PointerByReference. ShortByReference. W32API.HANDLEByReference.X11.AtomByReference.X11.WindowByReference ByteByRefer…
(4)char的存储方式是,对英文字符(ASCII)占用1个字节,对一个汉字占用两个字节:而varchar的存储方式是,对每个英文字符占用2个字节,汉字也占用2个字节,两者的存储数据都非unicode的字符数据. 增:create database 库名; 删表或表内容:drop  table 表名;         delete from 表名 where 主键 = " 具体值"; 删库:drop  database 库名; 查:select * from 表名; 改:update…
/************************************************************************* > File Name: ptr_variable.c > Author: Mr.Yang > Purpose:演示指向变量的指针 > Created Time: 2017年06月03日 星期六 08时47分33秒 ************************************************************…
1.赋值兼容规则 (1)派生类对象能够给基类对象赋值,这样的情况下派生类对象将从基类继承的成员的值赋值给一个基类对象:可是不同意将一个基类的对象赋值给一个派生类. (2)能够将派生类对象的地址赋给基类指针,使基类指针指向派生类对象,通过基类指针引用成员时仅仅能够引用派生类从基类继承而来的成员,而不同意引用派生类的新成员. (3)引用与指针同样. 2.多继承 (1)一个派生类从两个以上的基类中去继承. (2)说明: class 派生类名:继承方式 基类1, 继承方式 基类2,...... {派生类…
目录 C语言程序设计:综合设计实验一(设计一个文字游戏) 1.实验要求 2.设计思路 3.源码 4.后话 C语言程序设计:综合设计实验一(设计一个文字游戏) 1.实验要求 (1) 设计一个文字游戏,通过玩家输入命令或者选择某种操作,推进剧情的发展,要求程序有一定的可玩性. (2) 在没有学习文件之前,用字符串数组保存剧情文字信息: (3) 在游戏中设计随机元素,用户同样的选择,可以得到不同的结果. (4) 根据自己能力完成上面的练习后,填写实验报告,将源文件和实验报告,命名为"学号-姓名-实验X…