gtk+学习笔记(四)
摘要:今天看了下单选按钮的设置,实现起来还是挺简单的,就是自己太不熟练 1 radio=gtk_radio_button_new_with_label(NULL,"a"); //第一次创建单选按钮,第一个参数应为NULL 2 g_signal_connect(GTK_O...
阅读全文
gtk+学习笔记(三)
摘要:gtk感觉函数好多,需要记好多函数,还是多练习,多总结,今天写了一个登陆窗口,很简单,主要是为了加深对这些东西的记忆,直接贴代码 1 #include 2 static GtkWidget* entry1; 3 static GtkWidget* entry2; 4 void succes(...
阅读全文
linux c下输入密码不回显
摘要:今天做一个登录程序,需要屏蔽掉密码,于是自己就在网上找资料,找到了一种和linux终端下输入密码方式相同的方法,不显示在终端,具体代码实现如下。 1 #include 2 #include //屏蔽密码的函数在这个头文件中,需要包含这个头文件 3 #include 4 ...
阅读全文
浮点数在计算机内存中的存储方式
摘要:在计算机内存中,float型数据占4个字节,double型占8个字节,它们在计算机中的存储分为三个部分:符号位:0代表正,1代表负。指数位:将一个二进制数用科学计数法表示之后指数的值。尾数位:用科学计数法表示的前面的数。其中存储的方式如图double型的数据存储方式与之类似,只不过能表示更大的数位现...
阅读全文
gtk+学习笔记(二)
摘要:如何创建一个按钮呢,直接贴代码把,有详细的注释。 1 #include 2 gint data_count=1; 3 void on_button_clicked (GtkWidget *button,gpointer data)//定义button这个按钮点击后发生的事件 4 { 5 g_...
阅读全文
linux下c图形化编程之gtk+2.0简单学习
摘要:在linux下想做一个图形化的界面,然后自己选择使用gtk+2.0来进行编辑,我的电脑已经安装过gtk+2.0了,所以就在网上找了一个安装方法,结果未测试,大家有安装问题可以说下,一起探讨下。1、安装gcc/g++/gdb/make 等基本编程工具sudo apt-get install build...
阅读全文
关于字符串排序合并的问题
摘要:今天遇到了一个问题,题目大意是输入两个字符串,然后给这两个字符串按照ASCII码从小到大进行排序,最后在将两个字符串合并,要求删除其中相同的字符。一开始的时候感觉挺简单的一道题,但是做起来还是小毛病挺多的。还是直接看代码吧,代码里面的注释有许多需要注意的地方。 1 #include 2 #inclu...
阅读全文
单链表选择排序
摘要:单链表有多种排序的方法,今天先来说下用选择排序给一个单链表排序。先来复习下什么是选择排序吧。选择排序,第一次用第一个值与其他值比较,找到最大的交换;第二次循环到第二个值,以此类推到最后一个值,此时,就已经有序。int main(){ int temp,k; int i,j; int...
阅读全文
关于字符串输入的问题
摘要:今天在做一个关于字符串的程序的时候,出现了一个问题,用scanf函数无法接受一个含空格的字符串,于是自己就找了一下网上的资料,自己在整理了下。scanf函数可以接受一个字符串,但是遇到空格或者换行它就会结束输入,无法在字符串中加入空格,而gets函数可以接受空格到字符串中,两个函数都会在输入结束后加...
阅读全文
再谈数组指针(做函数的参数和返回值)
摘要:之前简单的说了一下数组指针,今天用的时候就出现了问题,主要是不知道怎样把一个一个数组指针当做参数还有函数返回值,今天好好查了一下,写了一个简单的程序,主要用来说明这两个问题。好了,直接看代码吧。 1 int (*func(int (*a)[4]))[4] //定义一个f...
阅读全文
数组指针和指针数组简单了解
摘要:这两个看起来很相似,但是却完全不一样。下面先说下数组指针。数组指针,例如int(*p)[5],定义了一个数组指针,它指向指向包含5个int型元素的一维数组。来个程序看看。1 #include2 int main()3 {4 int c[4]={1,2,3,4}; //定...
阅读全文
函数指针简单了解
摘要:什么是函数指针,简单来看,其实它还是一个指针,只不过它指向一个函数,下面看一个简单的例子 1 #include 2 int max(int x,int y) //定义一个函数用来返回两个数中较大的一个 3 { 4 return (...
阅读全文
linux下如何使用gdb调试
摘要:gdb是linux下非常好用的一个调试工具,虽然它是命令行模式的调试工具,但是它的功能强大到你无法想象,这里简单介绍下gdb下常用的命令。首先编译生成可执行文件(这里的test.c是一个简单的求前n项和的程序)。gcc -g test.c -o test(-g选项告诉gcc在编译程序时加入调试信息)...
阅读全文
linux下输入密码不回显
摘要:这几天在做一个登陆的程序,需要将输入的密码屏蔽掉,自己百度,找到了两种方法,先贴下第一种方法,1 #include2 #include3 int main()4 {5 char *password;6 password=getpass("input passwd");7 pr...
阅读全文
将一串字符串数字转化为整型数字
摘要:上篇文章介绍了itoa函数的实现,今天来说说atoi函数,主要思路是:将字符串从头开始读取,跳过最前面的空格以及其他无用字符;遇到正负号,做标记;之后的字符串,遇到数字则转换,遇到其他字符则直接跳出。好了,贴下代码: 1 int atoi(char str[]) 2 { 3 int ...
阅读全文
将数字转化为字符串
摘要:面试的时候问到的一个问题,如何将一个数字转化为字符串,如果可以使用库函数的话,sprintf会是一个很好的选择,例如sprintf(s, "%d", 123); //产生"123",sprintf(s, "%10.3f", 3.1415626); //产生:" 3.142"。但是不允许使用库函数的话...
阅读全文
给定一列数字将其平移n位
摘要:原题的意思是给定一个指定长度的数组,然后接受一个数字m,将原数组前m位移动到最后,且顺序不变。看到这个题,想到的第一个方法就是在用一个数组来储存改变后的数字,代码如下 1 int func(){ 2 int i,j,n; 3 int b[10]; ...
阅读全文
判断回文数的问题
摘要:如何判断一个数为回文数。某些教材上给出判断五位数的方法,分别分离出个位、十位、千位和万位,然后判断个位和万位、千位和十位是否相等。这种方法的局限性太大,只能判断五位数的回文数。还有一种思路,把接受到的数字直接存为字符串,然后头尾两个指针逐个比较是否相等,这种方法我其实挺无语的,本来是好好的一个数字,...
阅读全文
c语言链表逆序的问题
摘要:去面试被问到一个问题,怎么把一个链表反转(用原链表),自己在网上找了到了一篇文章,http://blog.csdn.net/sicofield/article/details/8850269,原作者给出了三种方法,方法一:将链表数据全部读到数组中,然后在倒序输出。方法二:就是我下面要讲的。方法三:从...
阅读全文