Latest web development tutorials
×

C หลักสูตร

C กวดวิชาภาษา C แนะนำโดยย่อ C การตั้งค่าสภาพแวดล้อม C โครงสร้างหลักสูตร C ไวยากรณ์พื้นฐาน C ชนิดข้อมูล C ตัวแปร C คงที่ C ประเภทการจัดเก็บ C ผู้ประกอบการ C ผู้พิพากษา C การไหลเวียน C ฟังก์ชัน C การกำหนดขอบเขตกฎระเบียบ C แถว C ชี้ C เชือก C โครงสร้าง C สหภาพ C ฟิลด์บิต C typedef C อินพุตและเอาต์พุต C การอ่านออกเขียนเอกสาร C preprocessor C ส่วนหัว C ปลดเปลื้อง C จัดการข้อผิดพลาด C recursion C พารามิเตอร์ตัวแปร C จัดการหน่วยความจำ C บรรทัดคำสั่ง C คลาสสิก 100 ราย

C ห้องสมุดมาตรฐาน

C ห้องสมุดมาตรฐาน - คู่มืออ้างอิง C ห้องสมุดมาตรฐาน - <assert.h> C ห้องสมุดมาตรฐาน - <ctype.h> C ห้องสมุดมาตรฐาน - <errno.h> C ห้องสมุดมาตรฐาน - <float.h> C ห้องสมุดมาตรฐาน - <limits.h> C ห้องสมุดมาตรฐาน - <locale.h> C ห้องสมุดมาตรฐาน - <math.h> C ห้องสมุดมาตรฐาน - <setjmp.h> C ห้องสมุดมาตรฐาน - <signal.h> C ห้องสมุดมาตรฐาน - <stdarg.h> C ห้องสมุดมาตรฐาน - <stddef.h> C ห้องสมุดมาตรฐาน - <stdio.h> C ห้องสมุดมาตรฐาน - <stdlib.h> C ห้องสมุดมาตรฐาน - <string.h> C ห้องสมุดมาตรฐาน - <time.h>

ปลดเปลื้อง C

ปลดเปลื้องตัวแปรจะถูกแปลงจากประเภทหนึ่งเป็นข้อมูลชนิดอื่น ตัวอย่างเช่นถ้าคุณต้องการที่จะเก็บค่าของชนิดยาวเพื่อเป็นจำนวนเต็มง่ายคุณจำเป็นต้องพิมพ์หล่อยาวเพื่อ int ชนิดคุณสามารถใช้ประกอบการหล่ออย่างชัดเจนใส่ค่าจากประเภทหนึ่งไปอีกประเภทหนึ่งดังต่อไปนี้:

(type_name) expression

พิจารณาตัวอย่างต่อไปนี้การใช้งานของผู้ประกอบการที่มีการแปลงบังคับให้ตัวแปรจำนวนเต็มโดยตัวแปรจำนวนเต็มอื่นที่ได้รับลอย:

#include <stdio.h>

main()
{
   int sum = 17, count = 5;
   double mean;

   mean = (double) sum / count;
   printf("Value of mean : %f\n", mean );

}

เมื่อโค้ดข้างต้นจะรวบรวมและดำเนินการก็จะก่อให้เกิดผลลัพธ์ต่อไปนี้:

Value of mean : 3.400000

ต้องทราบที่นี่เป็นผู้ดำเนินการโยนจะเหนือกว่าฝ่ายดังนั้นมูลค่าของทุนที่เป็นครั้งแรกที่แปลงเป็นคู่แล้วแบ่งนับได้รับค่าจากประเภทคู่

แปลงชนิดสามารถเป็นนัยดำเนินการโดยอัตโนมัติโดยคอมไพเลอร์ก็สามารถที่ชัดเจนที่ระบุโดยใช้ผู้ประกอบการหล่อในการเขียนโปรแกรมที่มีความจำเป็นต้องใช้เวลาดำเนินการแปลงชนิดหล่อเป็นหลักปฏิบัติที่ดีในการเขียนโปรแกรม

โปรโมชั่นหนึ่ง

หมายถึงโปรโมชั่นหนึ่งมีค่าน้อยกว่าหรือไม่ได้ลงนาม intชนิดจำนวนเต็มintจะถูกแปลงเป็นintหรือกระบวนการint ไม่ได้ลงนามพิจารณาตัวอย่างต่อไปเพิ่มตัวละครในเป็น int:

#include <stdio.h>

main()
{
   int  i = 17;
   char c = 'c'; /* ascii 值是 99 */
   int sum;

   sum = i + c;
   printf("Value of sum : %d\n", sum );

}

เมื่อโค้ดข้างต้นจะรวบรวมและดำเนินการก็จะก่อให้เกิดผลลัพธ์ต่อไปนี้:

Value of sum : 116

นี่คือผลรวมของมูลค่า 116 เพราะคอมไพเลอร์ที่ได้รับการโปรโมชั่นหนึ่งเมื่อดำเนินการดำเนินการนอกจากนี้ที่เกิดขึ้นจริงที่ 'C' ค่าแปลงเป็นค่า ASCII ที่สอดคล้องกัน

การแปลงทางคณิตศาสตร์ตามปกติ

แปลงเลขคณิตปกติถูกโยนไปโดยปริยายค่าของชนิดเดียวกันคอมไพเลอร์แรกที่ดำเนินการยกจำนวนเต็มถ้าตัวถูกดำเนินการที่แตกต่างกันที่พวกเขาจะถูกแปลงเป็นลำดับต่อไปนี้ปรากฏประเภทระดับสูงสุด:

แปลงเลขคณิตปกติ

การแปลงทางคณิตศาสตร์ตามปกติไม่สามารถใช้กับผู้ประกอบการที่ได้รับมอบหมาย, ดำเนินการทางตรรกะและ && || ลองดูที่ตัวอย่างต่อไปนี้เพื่อให้เข้าใจแนวคิดนี้:

#include <stdio.h>

main()
{
   int  i = 17;
   char c = 'c'; /* ascii 值是 99 */
   float sum;

   sum = i + c;
   printf("Value of sum : %f\n", sum );

}

เมื่อโค้ดข้างต้นจะรวบรวมและดำเนินการก็จะก่อให้เกิดผลลัพธ์ต่อไปนี้:

Value of sum : 116.000000

นี่, C จะถูกแปลงแรกเป็นจำนวนเต็ม แต่เนื่องจากค่าสุดท้ายเป็นชนิดที่สองเพื่อการแปลงทางคณิตศาสตร์ตามปกติจะใช้คอมไพเลอร์จะฉันและ C จะถูกแปลงเป็นลอยและทำให้พวกเขาร่วมกันเพื่อให้ได้รับจำนวนจุดลอยตัว .